Wednesday, March 9, 2022

How to grow as a developer in backend development

Let's say a developer at an interview showed good knowledge of the Java core and made it clear that he was ready to develop, although he still did not have broad knowledge in the field of various enterprise libraries.


If you accept such an employee and give him the task of developing a highly specialized library that allows you to more effectively build client-server interaction, he will quickly replenish his knowledge and join the team, because in the process of working on the project he will have to interact a lot with colleagues.


Ten years ago, X5 Group's store systems development division employed approximately 20-30 people. The company had a small self-written system that automated the operation of stores. It was tied to the Windows OS and supported a small list of store hardware vendors. These shortcomings did not allow to grow quickly and open new points.


When opening a new store, the cost of this process plays an important role. The lower it is, the faster the business will grow. Top management set a task for the team: to reduce the cost of opening new outlets. The workers studied the market, bought one of the box store systems to replace the old one, and started working on it. As a result, from 2014 to 2019, the market share occupied by X5 Retail Group doubled from 6% to 12%.


Over time, the amount of functionality that needed to be created and implemented grew so much that the development possibilities of the acquired system reached their ceiling. Then the developers from X5 decided to change its monolithic architecture and created many microservices.

Benefits for working in large IT systems

Valuable experience in the field of hard skills. In the past, when faced with a problem—whether coding, testing, versioning, or any other side of development—you were forced to iterate through a large number of solutions yourself, many of which did not lead to the desired results. Now there is no more need to spend sleepless nights on the forums and learn from your mistakes: you can simply turn to a colleague who has already encountered a similar situation. He will not only point out the right path, but also explain what wrong decisions can lead to.


Opportunity to share your experience and expertise. Of course, you yourself will become a source of experience for your colleagues. Some may argue that if you openly share with others everything that you have learned and understood, then you can stop being an employee with unique knowledge, since any of your colleagues can easily replace you. But the discussion of the problem is a two-way street: the interlocutors will also express their opinion and help to look at the usual issue from a new angle; you will get new food for thought and will better understand the subject of discussion.


Growth of soft skills. The employees of a large company are numerous and divided into teams. You will have to interact often with both your closest colleagues and people from other teams; both with those whose technical skills are similar to yours, and with senior employees who will be excellent mentors for you. Moreover, the communication will be varied: from intra-corporate meetups to informal conversations in the dining room or smoking room. All this will help you learn to better understand your colleagues and communicate your point of view more effectively, and eventually find solutions that suit everyone. This is a great opportunity to grow from a developer to a team lead or project manager.

Let's say a developer at an interview showed good knowledge of the Java core and made it clear that he was ready to develop, although he still did not have broad knowledge in the field of various enterprise libraries.

How to grow as a developer in backend development

Let's say a developer at an interview showed good knowledge of the Java core and made it clear that he was ready to develop, although he...