Retail Information System Integration (Case Study) with the Help of Dedicated Application Developer
There’s no doubt that automating a retail business offers countless benefits to the said business. Taking into account the complexity of a retail information system, such a system should be properly supported to ensure the delivery of sustainable and high-quality services. What does it really mean to support a system like that, what kind of challenges to expect and how much would it cost? Here you can take a look at senior application developer salary rates for a reference. We already have a dedicated application developer, Mykhaylo, who has worked on a project involving such a system, and we gained some valuable insights from him that you might find helpful for your own businesses.
In a few words, what is the goal of your project?
We all visit shops and expect to find something we need to buy. Just imagine this: you own a big construction company and you are building a big house. You would need a lot of materials like concrete (and concrete mixer as well), reinforced concrete, welding machines, plasterboard, primer, wood, lumber, calcium hydroxide and tons of other things. So, would you like to drive your truck from dusk till dawn and from dawn till dusk to move all these materials to the construction place? Of course, you wouldn’t! That’s the thing, the services of our client take care of this stuff and let you avoid such headaches. Instead, all you would need are a few clicks on your laptop and everything will be delivered. So, that’s what our client’s project was created to guarantee.
Moreover, sometimes we go from store to store and just don’t find what we are looking for. This might not happen a lot, but when it does, it’s really a huge chore. Another useful thing our client’s services guarantee is that every store is able to satisfy the needs of its visitors.
Our client’s final goal may be expressed as infinite retail power. It’s kind of a communication channel between retailers and suppliers. Actually, it’s called EDI (Electronic Data Interchange). Everyone in this channel has his own ERP (Enterprise Resource Planning) system with a lot of data to share (send, receive, and process). So, the goal is to provide a fast and stable cross-format EDI process between retailers and suppliers.
Could you outline the challenges you are facing?
- Time: For each customer of the system, we have a Service Level Agreement (SLA). According to this SLA, if a customer has a problem, we need to solve it or explain what the customer is doing wrong and what should be adjusted on his side.
- Data Formatting: Most of the system users have their own ERP system with their own data format. Since we have our own internal data format (we call it the core format and it’s actually a kind of UBL XML), we have to convert the user’s data format into the core format and only then can we convert it to the format that the recipient requires. So when we are onboarding a new customer, we need to analyze his data format and build conversion maps. This tends to be a problem, especially if the customer is not able to provide complete specifications for his data format.
- Communication: Sometimes it’s quite hard to explain to a user that he’s sending incorrect data and that he needs to adjust his IT infrastructure in order to correspond to his own requirements that he had given earlier.
What are the solutions to these challenges?
- Monitoring systems: We have a few good monitoring systems. Thus, we receive several notifications from these systems: emails, short messages, and push notifications via Android/IOS applications. Thanks to all these, we are able to know that one of the system users has a problem almost instantly after the issue occurs. This way, we can start to investigate the issue even before the user contacts us to report it.
- Mapping tools: We use a powerful tool called mapping designer. It has its own internal programming language (somewhat similar to VB) and it allows us to parse any user’s data and modify any field to make the final data comply with any EDI standards: EANCOM, EDIFACT, etc.
What does your workflow include?
Our workflow includes the whole system user care cycle:
- Analyzing the user’s needs in terms of our system;
- Helping a user adjust his own IS (information systems) infrastructure to be able to use our system as a communication channel with his partners;
- Onboarding a new retailer/supplier as a system user and supporting them (e.g. performing daily analyses of the user’s traffic and investigating and fixing issues which the user may have with the EDI process).
My key responsibilities in this project are:
- Configuring and supporting the monitoring systems (SolarWinds, Zabbix, SpiceWorks, R-U-ON)
- Configuring and supporting the continuous integration chain (Git, Bamboo, RedGate source control for MS SQL, Octopus)
- Configuring and supporting web servers (IIS)
- Configuring and supporting backup systems (VeeAm, Veritas, RedGate SQLBackup)
- Configuring and supporting new databases (MS SQL)
- Configuring and supporting production environments
- Creating data transformation maps for a new user (Mapping Designer, internal language slightly similar to VB)
- Testing new mobile and web applications (manual QA; Ranorex studio using C#/VB.NET).
How is communication set up on your project right now, as you are working remotely?
We have a working communication procedure. We don’t have daily meetings (e.g. status calls) since our team is small. When we need to discuss something planned, we schedule a meeting with the rest of the team. When we have an emergency, we just call each other. We use Jira and HappyFox for assigning tickets and tasks to each other. We use HipChat, Skype, and GoToMeeting to communicate more efficiently.
We use a lot of great technologies and we’re doing a great job making people’s lives more comfortable, but that’s not the main thing for me. The motto of my life is the famous master Yoda’s quote: “No. Try not. Do. Or do not. There is no try.”. I’m happy to work for a company that has a much shorter motto: just “Do!”. :)
Retail Information System Support and Development
Of course, integration of such a system would take a lot of time and patience. It’s also important to make sure everything works the way it should. With the right approach, it’s possible to have a team member like Mykhaylo to take care of it all remotely.