Business success from your technology at a distance of button press >
Under the leadership of Andrey Tiroshkin, Binovite formulated about 40 recommendations for startup companies throughout their journey, established companies and investors. The recommendations are divided into six areas: operation, software development, information management, artificial intelligence, general management and investments and finances. Andrey Tirushkin accompanied over 100 different companies and carried out hundreds of projects in the last 15 years. Start-up companies can use recommendations to take themselves a step further, established companies can use recommendations to improve their processes and investors can use recommendations to understand how to evaluate startup companies for investment.
All company departments should be connected and the information should be cross-referenced, in order to drive processes from one end of the company to the other.
Using software tools, artificial intelligence, personalization, etc. to automate repetitive processes, use employees’ time more efficiently and create a more pleasant customer experience.
Using tools such as language modeling, learning from past cases, personalization. “Service” operations can be produced automatically and faster. Service personnel enter a phase of control and situations that the system has not yet recognized from past cases.
Despite the tendency to develop, you will perform a characterization of the capabilities you are looking for, then perform a test to see if there are tools that meet the need in the market and finally perform a cost comparison taking into account long-term maintenance.
Despite the tendency to employ salaried employees, it is better to employ individual core people within the organization and the rest is better to be outsourced.
There is a tradeoff in the triangle: technological capabilities, price and interpersonal/organizational capabilities. Use connections and recommendations to find the right mix for you. Even after you have started the employment, check the candidate’s performance in the first two weeks.
When you want to hire: someone very high-quality part-time or working for a few hours a month. From my experience, contrary to popular opinion, in most cases freelancers are more loyal and efficient to the organization because of the flexibility in the employment model and the responsibility for their good name and contractual commitment.
The wisdom in software development is to build something only when there is a real need for it (from a paying customer), without investing huge sums in infrastructure before there is a need for it. At the same time, leave room for future expansion.
It is important to implement Design Patterns that do not delay the development at the beginning and allow the recipient the processes later on that will be necessary.
In 99% of the time 1% of the code runs, using analysis tools and advanced software techniques makes it possible to improve those bottlenecks and improve the user experience of the entire system at little cost.
Many systems started out as “classic” software that ran on one server and did not allow true Scaling. In most cases, years of thinking and adjustments have also been invested in them, which does not allow leaving everything and redeveloping with an advanced method. Building a transition plan to the cloud will allow you to continue working with the old system so that with each new development the system will become a cloud system.
Large organizations do not allow changes (due to existing customers, outdated infrastructure, budget limitations), but even a large ship that turns one degree every day will eventually change course by 180 degrees.
Choosing as limited a set as possible of technological tools that are up-to-date enough to satisfy the full needs of the company.
Compare with similar successful companies in your sector to plan your product along the evolution they have gone through instead of just focusing on the immediate needs.
Examination of the configuration of the cloud services and examination of cheaper/more efficient alternatives. For example: examining the feasibility between different cloud providers Azure/AWS/Google cloud and optimization of Scalling.
Build a data model and specify in which system the records are kept. You can later analyze the information in a more convenient way.
Be sure to collect information into the system that you characterized in as many business processes as possible: code development, customer service, sales, etc.
Saving information in SQL is easy and allows fast cross-references, but is limited in performance. The use of database management techniques makes it possible to keep as much core data as possible that is essential for the business function, and the output of the excess information to BigData so as not to overload the system.
Using database management techniques makes it possible to improve the speed several times, sometimes by making only simple settings. Example techniques: indexes, stored information, preprocessing of information, analysis of locks, etc.
Using advanced tools to display information relevant to each department or manager in real time. It is important to present to senior management the KPIs that reflect the general situation in the business without creating a data load.
There are thousands of ready-made algorithms (most of them free) and every day something new is invented. AI capabilities can be added to the organization relatively easily, putting you on the same page as advanced artificial intelligence companies.
Most of the time, the biggest obstacle is not knowledge of AI, but a database from which one can adequately learn. Data collection techniques from the first moment save every piece of information and every user interaction and prepare it for future cross-referencing and analysis.
Artificial intelligence systems consume a lot of computing resources and costs. Using models for initial processing of the information will save costs in using the advanced models.
The learning time is an important parameter. Using advanced tools for managing Pipeline and databases allows to shorten the learning time, which, in addition to lowering costs, accelerates the Data Scientist’s optimization cycles.
Aiming for a handful of skilled people who each know the full picture, and completing the permit with technological tools and outsourcing. Gives motivation to initiate without the breakdowns in bureaucracy or a broken phone between the departments of the organization.
In most startups, all responsibility falls on one programmer. In practice, the following roles are different and their knowledge is necessary for the organization: CTO, R&D, team leader, product manager, software tester, back programmer, front programmer, application developer, DevOps person, system engineer, database person, WordPress website developer, DataScinece person, property , Solution engineer, integrator, IT and networks person.
But what do you do when you only have a budget for 2 people? First of all, you need to make sure that they share these specialties among themselves, and implement work procedures in which they wear a different hat each time, and what not to export to Outsource.
Most of the time there are no lazy programmers, but there are many programmers who do not understand what is expected of them. Building a stable work flow allows software professionals to increase their head and reduces misunderstandings and bugs.
The software and marketing department live in different time dimensions. Sales often think in terms of from today to tomorrow, on the other hand, the software people aim at infrastructures that will serve the company for years. Bridging the gap between the departments is a key to the company’s success.
The world of software and AI runs at a crazy pace, just keeping track of what’s new and training teams is a full-time job, this is knowledge that every company must maintain in order not to remain obsolete.
Preparing the company for crises such as cyber, breakdowns and overloads, information leakage, departure of a key person, etc. And when, God forbid, it is important to have by your side a professional who is already experienced and knows how to conduct himself.
Most of the estimates of the software development budget are optimistic, in practice the cost of development is inflated by hundreds of percent for what was included. Risk Management? Creditors must be taken into account such as: changes in customer requirements, maintenance, security, technological obsolescence, maturation of the system, turnover of minds in the team, etc.
Designing a minimal MVP version so that it can be expanded into a full product later. Insights are always with the customers, what we imagine as entrepreneurs will change as soon as the product meets the first customer. It is recommended to have conversations with potential customers.
Before investing, it is important that a professional who understands both technology and business do a close analysis of the project to make sure that the real technological capabilities match what the company is marketing in the presentation.