Our company needs specialists in its business:
About Our Customer
DetailsThe company sells non-food items such as toys, stationery, dishes, haberdashery, household chemicals, household equipment, household appliances and all kinds of fishing equipment. The Supermarket network works all around Ukraine both offline and online. After contacting us the number of stores increased from 4 to 8. This year, they are focused exclusively on retailing.
The Task Set for Us
The application had to solve the following customer issues:
- Calculate bonus on the account;
- Generate and display the barcode for scanning by the seller;
- See the history of purchases in the selected date range;
- Leave feedback with the ability to attach a photo;
- Show reviews and administrative comments on reviews;
- Scan the product barcode and instantly receive information about the name, cost and amount of bonuses that will be credited;
- See all current discounts: on goods for the week and promotional offers;
- track purchases through the online store, track the status of delivery and order processing.
The architecture of the server part of the application, as usual, was developed on the basis of our scaffold, built on the principle of pure architecture.
The main features of pure architecture are:
- Autonomy of logic, interaction interface and data;
- No dependency on databases, external frameworks and libraries;
- The dependence of the transition between the layers is directed from outside to the center, the transition is carried out through the interfaces of the Boundaries.
The use of this architectural approach allows extending the application logic without affecting the presentation layer and the data layer. This simplifies the functional development, increases the testability of the system and simplifies future support.
Another important point is the high availability and scalability of the system; at the design stage, we always analyze complex and loaded sections of the system. Separate them and bring them to separate services.
With Docker, we can deploy the infrastructure of any complexity within the same physical server and as the load on the service grows, we can easily take it to another server and scale it.
On this project, we completely divided the API into two parts: API for the mobile client and synchronization. All the functionality that is responsible for the relevance of the data and their processing, was rendered to the services.
For synchronization, we use the system REST API. So, the client will be able to connect not one accounting system to our application, but a set of methods will allow making any changes in data in a controlled manner. In addition, this solution guarantees a single data format for the mobile application (which it is waiting for) and share the system load that users generate during synchronization.
ZealStep – running app
ZealStep is a unique application where virtual money is assessed for complete steps and which can be exchanged for goods and services, or spent on getting discounts in the gyms, fitness centers, on buying items for sport and health.
The project includes a running app for iOS, a web-based partner panel and an admin panel for administrators.
How ZealStep works
- A user installs the app free of charge;
- He starts working out;
- Virtual currency (coins) is assessed for the complete steps.
We have studied similar services (pedometers, running apps) for mobile applications, we have found out strong and weak points and read the users’ reviews.
Tasks for the implementation of a running app:
- GPS tracking, location identification and steps counting;
- High speed of data exchange with the server;
- Convenient interface;
- Availability for push notifications.
ZealStep design for Apple Watch
ZealStep is a unique application where virtual money is assessed for the steps you have walked and which can be exchanged for the purchase of discounts in the gyms, fitness centers, for buying items for sport and health.
Out team has created design of the app for App Watch. The app helps to collect information about the activities, training routes, receiving messages through the Apple Watch interface.
The concept and main elements of the design for the “smart watch” have been created on the basis of the iOS app design.
Developing the app, we have taken into account the fact that the app will be used during the jogging sessions. It means that a small screen which is constantly moving shall have a great deal of information.
We had to cut down on the functions and elements, keeping only the ones which are important for the training.