Custom mobile app development is inexpensive: reality or illusion

When you come to the decision to create a mobile application without having experience in developing, the question of hiring developers inevitably arises. The question itself does not give an answer, so you have to analyze the pros and cons of outstaffing or outsourcing services of various artists. The first indicator to consider when analyzing is price. I want cheaper, but will it cost cheap in the end? With this article, we at Omega-R want to show pitfalls that may be hidden behind frequently encountered low prices.



2019 was a record year for the global mobile app market. Let's take a look at the indicators: 204 billion application downloads, which is 45% more than in 2016, 3 hours 40 minutes every day users spend on mobile devices, which is 35% more than in 2017.

In the top ratings of successful IPOs of 2019 are companies whose core business is precisely mobile technologies: Alibaba Group, Prosus & Naspers and Uber. In general, companies using mobile technologies are many times and ten times more successful than traditional companies.

It seems that 2020 changes the attitude to technologies once and for all - for almost all companies, the integration of mobile technologies in business processes has become a matter of survival. But the development of mobile applications has the flip side of the coin - the price.

Why so expensive?


Thanks to freelance, one gets the impression that you can create any turnkey mobile application within 100 thousand rubles. In some cases, you can really count on such an amount: if the allocated budget is extremely limited, which implies agreement to a lot of shortcomings in the quality of work, hidden and explicit bugs (errors), unoriginality or minimal functionality of the application. With an integrated approach to the application, such a price is impossible. Let's see where hundreds of thousands and millions of rubles come from, and how they are justified.

Time


In any company of professionals, the price is clearly calculated and signed by the components. The most common and universal way of calculating is the number of hours multiplied by the cost of the work of a specialistā€™s hour (rate). Thus, the time spent determines the cost of the project. As you know, a quality study of any business can be ensured by the amount of time spent with it.



Time is required for each stage of work on the project: research, design, application design development, frontend development (client part), backend development (server part), testing and commissioning. These stages necessarily require detailed study when creating a successful application.

The hour of a specialistā€™s work in IT outsourcing can differ dramatically: from 300 rubles per hour to 10,000 rubles per hour. It is difficult for anyone who is not connected with the IT world to understand this scatter. The real rate of a web programmer in Russia today is 1600-3500 rubles per hour, depending on his qualifications.

If the "specialist" offers a lower rate, then most likely he began to work recently and does not represent the market value of the work. Little experience of his work allows him only to ā€œdumpā€, flirting with high competition in the market of IT services. On the next real project, the ā€œstudentā€ will be able to earn experience thanks to mistakes, so even an official contract without a clear technical assignment is not so bad for him in the case of ā€œblockageā€, because tomorrow a new client will come, ā€œpeckingā€ at cheapness.

It will be difficult to refuse a ā€œcheapā€ specialist - it is unlikely that anyone else will undertake to remodel many bugs. Even if the rate is half as much, due to bugs that you will spend your time looking for, the release will be delayed many times, and the number of hours you pay will increase by 2-3 times. As a result, the total amount of expenses is still equal to the option of hiring experienced professionals, work with which does not turn into a headache.

A different situation is possible. When a rate is offered, for example, at 1000 rubles per hour, you get a programmer who is obliged to wind up the clock. This rate includes expenses for sick leave, vacation, social taxes, personal income tax and other taxes, so with such a rate of money for wages there will be little. Managing a development team and controlling its actions with its own manager does not always save the situation. The result is a bad product, money spent, a headache, numerous improvements or a new development from scratch.

A theoretically excellent application in the basic version can be created for nothing, but a team of developers who know their worth always works on really successful products.

Complex application structure


What does the amount of time depend on? There can be many factors, from the list of devices and platforms that will support the application to the list of its functions.

The complex structure of the application increases the complexity. The server part is required if the application, for example, synchronizes data with the server or is controlled by the admin panel via the web interface. Third-party APIs, the ability to work offline, animation in the interface, data storage issues, non-standard controls, and the presence of several user roles also complicate the structure of the application.

Which components require the most time:

  1. Large amounts of data, many screens and actions in the application;
  2. Server side;
  3. Administrative panel;
  4. Use of gadget hardware: NFC, barometer, Bluetooth, accelerometer, gyroscope, etc .;
  5. Connection to external devices;
  6. Integration with third-party systems and services;
  7. AR / VR-development and application of such breakthrough technologies as AI, blockchain, neural networks , etc.

Thus, the degree of complexity can approximately represent the complexity:

  1. Simple applications (small set of functions, fast development, the server part may be missing) - 300-700 hours.
  2. Applications of medium complexity - 700-1200 hours.
  3. Complex applications (complex architecture, security issues, many integrations, etc.) - more than 1200 hours.

One or more platforms?


Interested in developing apps for Android or iOS? Or maybe you need a web application? There are several points to keep in mind. In Android development, unlike iOS, they have many devices with different specifications and versions of operating systems. Adaptation for tablets and support for older versions of platforms and devices, limited by performance, functionality and lack of updates, lead to a higher cost of the project.

Smartphones are so similar to each other that it seems as if you can develop one single application for Android and iOS. But this is far from the case. The same appearance of applications on different platforms is achieved through the thorns of different programming languages, SDKs and programming tools.

However, in some cases, you can develop one cross-platform application for two platforms. In our experience, this solution allows you to reduce the cost of developing applications for two sites by 25-30% and speed up the time-to-market.

Design is not only about beauty


We outlined mainly the moments more related to development, and we got the impression that only programmers are needed to create a cool application. In fact, work always starts with product analytics and UX / UI design. We doubt that the programmer will be able to comprehensively work out these issues. Here we are talking about how to connect the needs of business and users in the application and how to make it as simple and clear as possible for the user.



No user will climb into the wilds of the code to assess whether he will use it. The main thing for him is how quickly and clearly the application solves his problem. And the question is not so much the speed of the software, but the development of the Customer Journey Map, User Flow, Usability, User Experience and the development of the application interface. If you have never heard about this, we suggest reading an expert article by our UX / UI designer Maxim Skvortsov. In it, he extensively answers the question of why it is necessary to deeply study the issues of design and design and how to create a truly successful application.

If you ordered the application, this does not mean that from tomorrow the contractor starts writing code. As in building a house, it is important to draw ā€œblueprintsā€, internal and external design, and think through the life of the house in dynamics. Visually unattractive or insufficiently thought out applications will be deleted immediately after installation or will not even be downloaded.

There is safety in numbers


High-quality applications are not created alone, a whole team of professionals with great experience is working on them. The more complex the project, the larger the composition of the development team. The minimum list may include a project manager, UX / UI designer, programmer and tester.

Where did the tester come from? Everything should be checked before the application is released, including the operation of functions, connected services and modules. The application itself can be verified by the customer. But finding the line with the error is most difficult in someone elseā€™s code, and itā€™s easier to fix it when you know the written code and the platform solutions used.

Complex projects can involve an analyst, a design team, a layout designer, a team of programmers, a tester, and a project manager. In this case, the rate of each specialist may differ. But this rate always includes trained professionals with experience, otherwise the company will face the loss of reputation earned by many projects, and a drop in the rating agencies. Thus, mobile development is expensive, and low cost can directly speak about the violation of processes.

It is impossible for one person to deeply understand all areas at the same time. Therefore, when hiring a freelance programmer, there is likely to be a need for other specialists. Naturally, with such an approach, there may be inconsistency and irresponsibility between specialists in whose experience you are not sure. Even if you hire a project manager, you will inevitably have to delve into all the details of the project yourself.



Letā€™s put together all the advantages of choosing a mobile app developer that covers the seemingly high cost.

1. The ability to test.For any development - web development, development for iOS or Android - IT companies often offer the opportunity to test the capabilities of a dedicated team of application developers on a small amount of free hours, which can not be said about freelance.

2. Freshness of technology. The company has a large staff of interchangeable experienced employees who periodically undergo certification and training. A loner will not be able to keep up with the development of technology in various fields. Outdated technologies can lead, among other things, to vulnerabilities and lower security for users.

3. Dates.The company signs obligations under an agreement, the violation of which carries huge corporate risks. The freelancer will always have a reason to abandon the project at any stage of application development: illness, relocation, family problems, employment. However, the abyss is possible without any special reason.

4. Professionalism. Companies, as a rule, are subject to professional verification and certification of rating agencies, which take on the assessment of the expertise of companies. It is not difficult for a freelancer to ā€œwinā€ reviews for himself, especially in collaboration with other freelancers.

5. The cost of time.With an IT company, you can save time and focus on your business, rather than on a project. Each team member clearly knows his role in the project, any intermediate result of the work is subjected to internal recheck before sending to the customer. With a freelancer you will have to take on the role of a project manager.

6. Security. An IT company has the status of a registered legal entity. This imposes a stricter margin of responsibility on her and greatly reduces the risk of fraud. A random person on the Internet can easily provide someone elseā€™s portfolio and subsequently turn your ā€œmobilizationā€ plans into chaos.

7. Control.The IT company already has a fully debugged work process that can be flexibly customized to meet customer needs. Work with a freelancer will most likely be in the nature of an uncontrolled process, when many things will either drag out, then suddenly resume or break off.

8. Involvement. The freelancer does not feel any connection with the project and sets only the goal of making money. The IT company is interested in customer loyalty, which implies the high quality of developer services and customer satisfaction. In addition, the involvement of each team member is ensured by the corporate employee motivation system.

Thus, when ordering services in an IT company, you get:

  1. High quality services
  2. 24/7 interaction
  3. Proven Expertise
  4. Compliance with deadlines and requirements
  5. ,

In addition to the described advantages, we have available reports on the progress of the projects according to the Time & Material contract model for the customer. With this model, payment is for the result, based on labor costs, i.e. the customer can see what task the number of hours spent on and compare this with the history of code commits (servings). The scheme is so transparent that the customer sees every line of code written by the developer on a daily basis.

It might seem better not to mess with digitalization. However, it should be considered as an investment in the future of your business, which can lose much more than the cost of developing an application. "Mobilization" inevitably leads to an increase in revenue and business efficiency in any field: retail ,medicine , education , real estate , utilities , smart city, etc.

Over the years of our work, so many projects have accumulated that the subtleties of each of them cannot be precisely described in one article. We hope that the experience of our company described in the article will help you choose the right path of interaction with the contractor. If the proposed ways do not suit you, then tell us about your problem in the comments, so that we think together how to solve it and at the same time take into account all the details of the project.

All Articles