
We continue to ask specialists about the mode of work and rest, professional habits, the tools they use, and much more.
It will be interesting to find out what unites them, in what they contradict each other. Perhaps their answers will help to identify some general patterns, useful tips that will help many of us.
')
Today our guest is Konstantin Osipov, developer, founder and project manager of Tarantool. Konstantin told how he manages to combine the post of software developer with the post of manager. He also shared his list of references.
What do you do in the company?I write the code, I do the review, I discuss the tasks with the guys. That is, on the one hand, I perform the functions of a developer.
On the other hand, I give reports, give interviews. Today I could not tell a lot, I stumbled. Therefore, after the report I was very angry with myself.
On the third hand, I'm still the manager. I need to help develop and grow many people who have associated themselves with the project, because for them it is still a career. And for this you need to develop the project itself.
How do you work? What are you at work?I am a very keen person, but I have a healthy share of laziness. Tasks that I solve as a manager require multitasking. And the development requires vice versa immersion. For a while it was hard for me to combine it. I work from home two days a week. I come to the office mainly for discussions, meetings and other work with people. And at home I can just do the development. If I can’t participate in the development, write the code, then I start falling out of the process. And I need to participate in order to develop the project. So you have to switch.
This is an interesting story, because many familiar managers are skeptical. They say: “As long as you code, you will not achieve good development of the project. We need to devote all our time to managerial tasks. ”
But I know that many database project founders continue to write code. Or, if you recall, for example, Linus ... he is kodit. And no one says that Linux is developing poorly because of this.
How many hours a day do you spend on work?Unfortunately, on average, 10 hours. I hate to say this. I'm not sure you need to spend so much time on this.
How many hours do you sleep?7.5-8 hours.
Do you have breakfastIn the morning I eat oatmeal. We make breakfast for the whole family. We have two kids. One child at first refused to oatmeal. But then I got used to it (smiles).
A lot of time goes on the road?This is a big problem for me. I have always been a fan of efficiency. Work from home is part of it. I am trying to reduce all unnecessary activities in my life. Everything should be as efficient as possible.
We now live in the South-West, and work at the Airport is about an hour on the subway. By car is even worse. The first time I was very angry that I was losing this hour. But now began to watch lectures in the subway, when I go. And sometimes I ride a bike. For 6 years of work, I found a route that goes first along the cycle path (on Vernadsky), then along the common road, and then again along the cycle path. Surprisingly, the bike does not get longer than a car in a traffic jam - 1.5 hours.
What do you do on the way to / from work?Most often I listen to audiobooks. I have an Audible subscription.
What kind of todo-manager do you use personally?vi. I tried Evernote, now I try Google Voice: you say OK, Google. Make a note. And he takes a note.
I recently read a science fiction book, The Star of Pandora. There is such super intelligence that you need to interact with. Probably, Google also read it and understood what to do with their voice services. But so far I do not really like them. Therefore, vi.
What kind of task manager do you use / issue tracker / repository?Completely on Github, and this answers all questions. All planning goes through it. And if some particularly difficult task, we describe it in Google Docs. Then you can convert it to the wiki.
Before that, we were on Launchpad, from Canonical (these are the same guys that do Ubuntu). They are now abandoned. But at one time this was a handy thing, only for Bazaar, not Git: for example, there were such interesting things as blueprints.
What tools, frameworks do you use for development?Several developers in the team use Clion, someone uses Sublime. In addition, there is a corporate Mail.Ru JIRA, Confluence. We use Travis CI, Concourse CI. Before that, we had a buildbot.
From the performance debugging tools we use Google Perf, Intel VTune. It is difficult to say that we use only the best tools, rather for each case we are looking for something that is best suited from the available.
Do you have any internal projects or libraries in your company and why were they created?We have both successful and unsuccessful cases. In version 1.7 we make a disk store. It appeared as an internal project, but turned out to be inoperative. I had to rewrite everything.
And there are cases that just shoot. One of our developers made a functional programming
library on Lua. It works well with LuaJIT, all functional programming primitives are supported. She became an independent project, she has a lot of fans.
We also made a set of tools to automatically build packages in Travis. This thing is called
PackPack . It is very convenient that in Github it can be connected to the project with one line.
In addition, we use Package Cloud: this service assumes the function of hosting repositories. Their open source plan is modest, but in general, if we could store all our packages in this cloud, it would be great. But so far it is very expensive. A Travis CI supports us as an open source project for free.
What annoys you most when you work?I am a very emotional person, and any thing that does not work, will turn me on very strongly. If we talk about work - much annoying.
As a person, I am increasingly confronted with my personal limitations. It really upsets me.
What professional literature would you recommend?There is such a thing - Library Thing. This is a site where you can place read books and reviews on them. I have an account there. You can go there and see
what I read lately .
Now I mostly read about IT management. Regarding Computer Science ... there are many new algorithms that we have not previously passed at the university. There are, for example,
Randomized Algorithms (1995) by Rajeev Motwani.
If we talk about the classics, there is a gentleman's set - for example,
Introduction to Algorithms , 3rd Edition (MIT Press) by Thomas H. Cormen and others.
Compilers: Compilers: Principles, Techniques, and Tools (2nd Edition) by Alfred V. Aho and
Engineering & Compiler (Second Edition) by Keith Cooper.
According to the databases - this is the
book of Ulman, Garcia-Malina ... A rather interesting book.
What do you prefer: electronic reading rooms or paper books?I have a Kindle. A couple of times I drowned the Kindle in the pool, a puddle - I used it quite actively. But this is not a replacement for wooden books. Now it happens that the book is not in electronic form, and I love time-tested books. If the book is in pdf, or is it something new, I read in the Kindle.
What technology (computers, tablets, smartphones) and operating systems do you prefer at work and at home?I have Linux at home and at work. Ubuntu 16. In general, I do not need anything from Linux. It would be enough for me and 10 years ago. I would be satisfied with the terminal and browser.
Enrages Open Office: you have to do a lot of slides in it. This project in its history has never become stable. Today, for example, the copy-paste of one slide took me a few seconds.
In terms of mobile devices, I chose Android. I have a Lenovo phone with a huge heavy battery.
Do you listen to music when you work?There used to be a negative attitude towards music while working, but work in the office changed that. Now constantly listening in the background chillstep, trip-hop, Aquarium (BG).
Which life hack allows you to be more efficient?The main reception - you need to constantly "tyunit" your habits. You need to constantly look for ineffective habits and burn them.
Let's say you're on Facebook. We need to understand why. Mark Calahen brought me to this network. He writes cool articles there, it must be read. So I ended up on Facebook. But all the extra time spent there, I burn out with fire.
What applications and services can you do without in your work or in your personal life?I use taxi services - usually Uber. It radically changed my life, because you plan your day differently. I also want a taxi without drivers. Then it would be even cheaper and one would not have a car at all. I also use maps, of course. Most often it is maps.me.
You have come a long way. And someone is now at the beginning of this path. What would you recommend to a person trying to go the same way?If I was myself 20 years ago, and would have heard myself now, I most likely would not have understood. People like Steve Jobs say very cool things, much better than me: “Stay hungry, try to achieve more.” You just need to be able to understand them correctly.