Emerline team specializes in mobile and web development and has been working with startups for over 6 years.
We position ourselves as a technology partner and not a common outsource team as we completely focus on helping startups come up with the best technological solution and make a really outstanding product based on their vision. Being a technology partner gives us freedom to choose the optimal tools, instruments, and methods when working on every single project we take.
Anton Akhramovich, a leading software developer in Emerline, talks about what we've learnt as a team working with startups during these 6 years.
Development for startups requires enormous creativity
Anton, I know you have been a part of the team on most projects. How did you guys started working with startups?
Anton Akhramovich: We've signed the first contract with a startup in 2011. Our team was small – just 5 people – but we had a lot of experience developing for major projects. We were ready to work on a project with minimal specification and no requirements, basically on an idea on a napkin. When a non-technical person wants to found a startup it's extremely hard for them to convey their vision of the end product correctly. These people look for a team that can flesh out their ideas and improve on them during development.
Later we received a few more projects from startup companies that looked for a good team for their product.
The right people in the right places
Can you tell me more about the team? How many people are working on the projects?
Our team consists of approximately 60 people and we are constantly looking for new talent. We believe in flexibility of positions – if something interests you we give the opportunity to pursue your passions and learn innovative tech and tools.
When a new hire joins the team, they always have the opportunity to look around and get acquainted with the team at their own pace, without hurry – review our projects and code, give feedback and suggest improvements.
In general, we have a very positive attitude to new ideas, new ways of doing things faster or better and improve the product. We often try to accommodate the vision of the team.
In bigger companies people can work on old established projects with the same obsolete set of tools than they used a decade ago. We try to track new tech trends and adopt the most promising tools and technology for our projects. Everyone in the team knows that the responsibility to offer our customers the latest and greatest in IT lies with each member of the team.
We believe in matching the right people with the right tasks. Everyone should be somewhere they can do their best for the company. A clear division of responsibilities allows us to specialize in what we know best and hone the necessary skills over time.
The company doesn't hire to put out fires or to fill a hole in a project. We seek new experts that complement the team with new skills and knowledge.
Since we are talking about innovative technologies how do you make time for learning new things or working on pet projects?
Emerline has a set budget for R&D that we use throughout the year. This year we are studying blockchain, IoT, and augmented reality. We also have a few projects where we implemented the elements of intelligent applications, machine learning, and ambient UX.
For example, in 2016 as a part of our cooperation with SAP we started the office automation project. Emerline team designed and integrated a proof of concept of a smart coffee machine. This project was a part of a bigger highlight at SAP TechEd 2016 in Las Vegas.
We attached to the machine a smart sensor system that analyzes consumption of coffee beans and forecasts when the supply runs out. The sensor unit registers the noise and vibrations that the machine emits under load and sends that data to the server. The server analyzes the data and defines what type of coffee was brewed.
Since the system knows how much coffee is required to make a single drink, it is easy to predict when we need to buy more beans. The server forms a purchase request and emails it to our office manager.
In the future we plan to completely automate this process and integrate the server with the SAP system. Maybe one day similar sensor units will help us detect anomalies in engines or collect and analyze data from any working equipment in real time.
New solutions to old problems
Let's go back to the startups theme. Tell us about a few interesting projects that you worked on.
One of the first startups we worked on already had a finished product. It was an IT asset management system. The solution processed thousands of pieces of office equipment every day. With time the system accumulated a lot of errors. It was infeasible to find and correct them manually. The company asked us to find a solution.
How do you review thousands of items together with their change history? We decided to develop and integrate a data analysis system based on machine learning technology.
The algorithms of the solution constantly analyze and detect anomalies in data collecting them from several different systems. For example, the system allows various connectors and algorithms to change equipment details, not exclusively users which sometimes causes errors.
The system compares these chunks of data and discovers abnormalities that it either corrects or requests human review.
The customer liked our solution and we liked the idea of using innovative technology and trying out new things. The inclusion of machine learning was a great addition to the growth of this startup.
Working with non-technical customers
You said there are a lot of non-technical decision makers on the projects. So how do you work with them and translate IT jargon into human?
It depends on the person. Here's an example. One of our first customers was a former distributor of alcohol products. The guy had more than 20 years worth of experience in the industry and knew the exact problem that plagues the market – complete lack of automation.
This founder helped us a lot. He created an epic document with detailed description of what a sales rep does throughout his day. Where he drives, what he does there and why. To understand their business better one of our developers even went on a business trip and spent a few days working with those sales representatives. This helped us see the process through the eyes of future users and make a clear description of the system logic and technical requirements.
Sales representatives are not very tech-savvy people. Our application makes their lives easier. Everything in the system has a single goal – to speed up input. To achieve this we got rid of fields with text. A smartphone can detect where the user is and select the nearest store from predefined locations. Photos get auto-tagged with current data and time.
The amount of time we save for our users daily is astonishing. Instead of going home and doing reports in their personal time, sales reps are now free at 3 pm or earlier.
Big advantages of working with startups
What are the main differences of working with startups, what are the pros and cons?
These are mostly features. Startups are generally much more eager to try new things. They completely rely on the technical expertise of the development team. We have an extremely high level of independence in our work, incomparably higher than on major projects. Team expertise and skills grow faster. After we began working with startups we managed to completely focus on new methodologies and approaches without using the well-trodden development paths.
Our developers often work with the customer onsite in order to better understand the users and their business challenges. Close collaboration with the founder brings better results as well.
There are no cumulative errors as in the telephone game. We keep an open channel of communication with the key people in the startup. Any team member can raise an issue or make a suggestion on how to improve something.
During our work with startups we gained a wealth of experience. We now have a much better understanding of business processes – this is a rare expertise to find in IT. And we as developers are constantly looking for more effective solutions. The team learned how to use data visualization, modern UI/UX best practices, and the most recent technology – augmented reality, machine learning, and Internet of Things.
We adopted the practice of investing in promising startups. The company launched a program that allows us to invest in any interesting startup up to 40 hours of free development.
Naturally, before investing resources we carefully study the future product and analyze its prospects, do some kind of reality check. This is done to fund the most talented team and the coolest products.
All startups we worked with have become successful. Some received new investments and are still in development, others reached the stage of selling the business.