Aleksandr Barmin is a specialist who seems to succeed in everything. In addition to being a lead Java developer at EPAM, he has the following achievements:
- Master's degree in computer science and Ph.D. in technical sciences.
- More than 1300 hours of teaching.
- 23 speeches at events as a speaker.
- 91 technical interviews.
- More than 360 hours of participation in various training courses.
We decided to ask Sasha how to stay as productive as he is, what to do when work efficiency decreases, and what techniques to use to get more work done.
Who is a productive person?
A productive person is someone who performs their duties well and on time. For example, if you are a developer, you should know how to deliver code or new functionality with the required quality and within the specified time. Apart from hard skills (technical skills), a productive person should know how to plan their time. In addition, they can effectively communicate with colleagues – without this skill, effective teamwork is impossible.
Productive people achieve goals that they want to accomplish themselves
When and how did you start to improve your productivity?
The first step to becoming productive is to set a goal
First, I answered the question of who I see myself in five years. I know that many companies ask this question in interviews, but it’s even more interesting to ask it yourself: “Who do I REALLY want to be in 5-10-15 years?”
For example, imagine your day in five years. What is it like? Where did you wake up? What did you do? What kind of people did you communicate with? By picturing the desired future, you can better understand what to strive for. It is best to write down the answers to these questions. Or you can do another exercise: where are you now compared to the picture of the desired future? After answering this question, you will be able to set goals and work in the directions you need.
What time management techniques do you use?
Plan for the day
You can write it down on a piece of paper or notepad, in an Outlook calendar, or create a to-do list on your phone. The plan needs to reflect the things you MUST do. You must complete this list of tasks no matter what. I conduct daily stand-ups with the team. I put them on my calendar. Even if something goes wrong, I know when exactly I must be free to communicate with the team.
The plan for the day is the core of productivity
To-do lists
David Allen describes the techniques of managing to-do lists in his "Getting Things Done" book. The idea of the book is that for almost every day or occasion there is a checklist of what to do. It is more convenient to use electronic to-do lists. You can work on a checklist while going to the office, in the subway, or in your car.
The Pomodoro technique
The name of the technique comes from the tomato-shaped kitchen timer. The technique is about working at intervals. First, you do the work for 20 minutes. Then you take a break for five minutes. Then you repeat the cycle—work for 20 minutes and rest for five minutes. After three iterations, you take a break for 15 minutes. The technique is good for things that you don't want to do, but you must. I use this technique to write reports. I make a report for 20 minutes, then take a break and return to the report. After a few “tomatoes” the problem of the report is solved.
Were there times when your productivity was considerably reduced?
My productivity falls a lot during negotiations. After these meetings, I feel exhausted. Also, if I work overtime today, tomorrow I will feel tired. The concept of fuel for thought helps me. Like any resource, fuel for thought runs out, and this should be avoided. To not spend the thought fuel, the best thing to do is to rest. The rest should be diverse. You can also do your resource activity—the one that maximizes the reserves of fuel for thought. It can be building ships or programming for yourself. Also, remember to eat healthy food, sleep, and go to bed and get up at the same time every day.
Productivity is a skill that allows you to do your job effectively. If you perform your work with excellent quality, then we can say that you are productive
Does a developer need soft skills?
Soft skills are very important for a developer because they allow you to concentrate on the important and use hard skills effectively. Most of the work in IT is done in a team. Therefore, the soft skill “effective communication” becomes extremely important. It allows the developer to avoid many mistakes at the integration stage.
Soft skills are the glue that allows you to use hard skills as efficiently as possible
What soft skills are important for a developer?
- Effective communication. One developer can solve almost any problem. But how much time does it take? Since developers work in a team, they should know how to negotiate with each other.
- Task management. There are always more tasks than time to solve them. It is important to be able to separate the important from the urgent and to prioritize.
- Learning new and constant self-development. Today, a developer needs to maintain the level of their qualifications to remain in demand as a specialist. For junior professionals, it is very important to have a desire to learn and develop, the ability to ask the right questions and take criticism calmly.
Could you recommend novice specialists how to create a development plan?
I recommend setting a goal. Think about who you want to see yourself in five years from now. For example, as a novice specialist, I want to try everything, but in five years I want to develop applications in Java. Then look around: some specialists have been developing applications in Java for more than five years. Ask them how they got where they are. Thus, you will know where you are now and where you need to go.
Next, break this long path from now to the desired state into achievable goals. Now you need to learn Java Core, then you need to learn Spring, then Hibernate, then you are on the way to large enterprise systems where more complex approaches, frameworks, or tools are used. Then you have a plan of action. It is important to make small steps every day. Plan for the day is the best way to do this. Do it when it is convenient for you: the night before or in the morning.