Two skills that will help to become an excellent developer
From the translator: this article is a translation of of the original article Bar of Franek, a jаvascript specialist. In his new material, he decided to tell what skills help the developer in his daily work. But we are not talking about software tools, but, rather, mental ones.
It does not matter if you work as a programmer for many years or just started your journey. It does not matter what position you occupy, work in the office, or do freelance. If you are a programmer, then your success is due to two extremely important skills: to focus on the business and concentrate.
"PHP developer from scratch to PRO" .
We remind you: for all readers of the "Khabar" - a discount of ??? rubles for recording on any course Skillbox for the promo code "Habr".
"The ability to go deep into your work is extremely rare and at the same time extremely important for the economy. The few who have managed to develop this skill will always be in a good position, "says Cal Newport in his book Deep Work.
I'm going to use the moments I've read in the book, linking them to my own experience and knowledge. I do this in order to tell you how to become a successful developer.
From the fear of code to the leading developer
I am a self-taught programmer who started his way in programming in 20 years. I always thought of myself as a creative person and thought that they would work where there was a need for a creative approach.
And it happened. After graduating from college, I started working for a company that was engaged in graphic and web design. I became a professional in Photoshop, a little bit of HTML and CSS. But I did not study more complicated things - what required PHP knowledge, for example, I gave it to outsourcing.
I was afraid of the code for a long time and left this work for the students with a diploma about completing the specialty "Programming". I thought that if you make a mistake in one character, you can let the entire client business slope away. In principle, it was not too different from the real state of things.
Now I work for a Fortune 50 company, I'm a professional developer and I'm involved in creating software that is used by millions of people every day. But how did I get to my current position without being a programmer at the beginning of the road?
My "secret" is in the ability to focus and sink into the heart of the problem. There is nothing special about me anymore. I just found a way to concentrate on one thing for a long time and not be distracted.
Programming is the art of
Indeed, programming often requires creativity. It may look too "technical" and dry for the average person. But in fact, you are the creator. You can create something from nothing. And this "nothing" is your own idea or the offer of the product manager.
Next, you begin to work and put on the idea of flesh, give her life. Not in colors or words, but with code (of course, there are some words in the code, but you understand what I mean, right?).
If you want to create a cool product, software, then you need to constantly practice. The quantity and quality of your work will increase when you learn how to work long in a focused way.
Art, music, writing - all this requires long periods of intense and continuous work. Distracted writer or artist - death alike, you can lose inspiration. But programming is no different from writing a book.
You become a more skilled programmer with each new successfully (or not really) completed task. Then you manage to work, performing more volume in less time. All this is a matter of experience.
Yes, you can become a super developer
I do not like words like a ninja, a rock star or a super developer. Actually, very few programmers like these terms, but companies and recruiters simply adore them.
Super developers do not know how to fly and save people, as superheroes do in Marvel comics. No, they just do more high quality work per unit of time than ordinary developers. And they can do the task for a long time and without distraction.
This, I tell you, is not the gift of fate. No one with this skill is born, it can not be "turned on". In order for this skill to appear, you must constantly train and work.
I interviewed a variety of specialties dozens of times, and I can tell you that super-developers are in demand everywhere and always. They are looking for recruiters, trying to determine which of the applicants has the right qualities.
By the way, there are more open vacancies for various IT-specialties now than for applicants themselves, so it's not so difficult to find a job for a developer. Business has a task - to close the "hole" in vacancies, so that companies will do much to hire a good developer.
"Project managers believe that the absence of a strong talented developer is one of the potential chances for the company's growth", - The Developer Coefficient .
In fact, it is difficult to find a really talented developer. Almost any company will be satisfied with just a good specialist, without the super-. In principle, this is almost enough, since such an expert can perform the task for which he was hired. No more and no less. For the company to find just a good developer - a great happiness, because a bad developer can do too much.
Two steps that will allow you to combine your skills with the programmer's focus and concentration of
It's time to start stepping on the career ladder. There are a lot of opportunities, and if you like what you are doing, you can achieve a lot.
An example is the transformation of the developer from junior to lord. You can go through this stage of development without much trouble - but only if you develop the above skills.
"In order to remain an economically valuable frame, you need to understand how to quickly learn complex things. This requires hard work and concentration. If you do not develop this skill in yourself, most likely, you will not succeed, "Deep Work.
Learning to focus hard
The first thing I would like to say is that learning to focus really hard. This means that you can not start immediately writing tons of good code. And it will not work if you do not realize how easy it is to distract a person.
The ability to focus comes with practice, it takes a lot of time to do this. It's not easy, but it's worth it. If you are ready for the complexities, then ok, you can gradually start moving towards the goal.
Do not confuse employment with productivity
The need to concentrate does not mean that you should close in a dark room and program 14 hours in a row. The fact that you are doing something does not at all mean that the task deserves to be worked on.
In other words, it is necessary to learn to identify priorities. You need to be able to understand what is important and what is not very. True, this is not included in the topic of today's article, but this skill is also significant.
The ability to focus brings clear results for everyone. Compare the fruits of their work in a state of deep concentration possible with the work of the sun's rays when hit on a magnifying glass. The beam, focusing, allows burning marks even on the hardest tree or other material. The same with focusing while working - without the ability to concentrate work will not work, it's like trying to work with a magnifying glass in diffuse lighting.
Any distraction from work means a drop in concentration and a dissipation of attention (in our analogy - the sun's rays). If you learn to focus on work, you can put together all the "rays" and perform important work, if not ideally, then close to it. By the way, there is no need to always use your skill - enough to be able to concentrate on the most important tasks.
Step 1. Eliminate the distracting factors
Multitasking against a person is a lie. You are deceiving yourself if you think you can write good programs, while distracting yourself with Slack or reading news
We live in a world that distracts us always and everywhere. Technology is good, but sometimes they only help to disperse attention.
You need to remove all unnecessary:
Put the phone on silent mode or turn it off altogether. In order that the phone does not bother, you can use special software, for example, Forest .
Close the Slack. This applies to other messengers. Most of them are very loud, so the message signal in any case will distract you at work. In order to get rid of this, exit all messengers. Many of them are not critical.
Close any other applications that can distract your attention, for example, email clients.
The most difficult thing is to close and not reopen tabs in the browser, which have nothing to do with your work. In order to not perform this task yourself, you can use specialized applications.
We use headphones. They allow you not to be distracted and concentrate on work. In addition, many recommend finding music that helps you focus, and work only for it.
Step 2. The Secret Weapon - Pomodoro
If you are already starting to panic, realizing that for eight hours you can not not be distracted, then do not worry. will help you. machinery Pomodoro . It consists of the following:
Break your work into 25-minute blocks (tomatoes)
Try to work for 25 minutes without being distracted. Use timers, you can have an hourglass, mechanical, software.
After working, rest for five minutes
It is extremely important that every 25 minutes you get up and leave for five minutes. Drink water, pozalipayte at various sites, go wash your face. Whatever it was, you need to completely get away from work for these five minutes.
Do only one task at a time
You can search for a bug, develop new functions, write code. If the task is too large (develop an application), then it should be divided into separate segments for five minutes.
Some tasks require the execution of several blocks (tomatoes). So, you might need three
All this is necessary in order to divide seemingly impossible tasks into many parts. For the most part, we procrastinate, because we are simply afraid to take on extremely difficult tasks. And then it turns out that we gradually remove these tasks, leaving them for later. And then we are afraid of them even more, since the amount of work that needs to be done does not go anywhere. If you split a large task into separate elements, for example, "write 300 words", then the problem is not so terrible.
Refusal of procrastination (at least partial) will make of you
You can not get distracted
If you are distracted, then you need to start all over again.
How to work for 25 minutes without interruption?
Even this is a problem for many. Perhaps you yourself, without noticing it, were always distracted, so that a minimum of time was spent on the work itself from the day's work. If it's difficult, try to start with ten minutes, then - 1? then - 20 and 25.
If desired, the blocks can be increased up to 55 minutes, if 25 minutes are not enough for you and you have learned not to be distracted by extraneous factors.
It may well be that even 25 minutes of continuous work will seem hard for you, because you can not look through the window, check the mail, Telegram. If it is very hard, try to perform only one block per day (this does not mean that you will work 25 minutes a day, but it means that you try not to be distracted by performing your task). But remember: if you are distracted, you need to start counting again for 25 minutes.
How does it help to become a good developer?
Let's be realistic. Your career does not help that you will go from the code editor to the chat, then check the mail and messengers while the Asana hangs an important task that needs to be performed right now.
But a few hours of work done with a deep immersion in the task, will help you to accomplish a much larger volume for the day than you usually do, distracted by literally everything.
As already mentioned, try to start with one "tomato", then gradually increase their number, and then - and the size of the "tomatoes", that is, the amount of time during which you work with maximum concentration.
So minutes will merge in hours, hours - in days, and days - in weeks and months. And you, without noticing it, learn how to work with maximum efficiency, which will not go unnoticed at work. Yes, and your programmer's skill is jumping in earnest, after which there will be more opportunities, because any company needs such programmers.
From the translator: as a conclusion, it can be said that the tips themselves from this article are not a revelation or a disruption of the covers, but with their help one can learn to work well, not procrastinating and not distracted by unnecessary affairs.
Online course "Python-developer from scratch" .
Online course "Profession of the web developer"
Educational online course "The Java Developer Profession" .
It may be interesting
Situs QQ Online
Situs QQ Online