Pros and cons of the profession of a programmer – experts answer

Profession Features

Most often, young professionals are faced with a mismatch of their expectations and reality. Someone at the initial stage is ready to work literally for experience and almost for free, while someone, having read about companies such as Google and Microsoft, immediately comes to the company with overstated requests.

Some people decide to become developers only because of money, knowing that programmers are paid more. Most who retrain or come from other professions are only interested in getting more than in their previous job. But if a person is not interested in programming in his spare time, for example, creating a mini-game or making up a website for a friend, then such a person is unlikely to develop in the field. This should be fascinating.

As in any other profession, there are negative aspects to the development. For example, when suddenly something stopped working in a running system. It seems that no one did anything, but the functionality you implemented stopped working or began to work incorrectly. Then an urgent investigation of the problem begins. As a rule, the technical support or testing department attracts the developer responsible for this area of ​​the system, and in order to quickly resolve the problem, he should be distracted from his current tasks. The developer is not always to blame for the problem, more often than not, but if the system is complex enough, then a person with more expertise will significantly speed up the localization of the problem.

Releases (release of a new version of the product) software is a separate topic. When a major release is made and something does not work, you have to linger or work on the weekend to achieve a normal result. With compensation in money or time off, of course. The situation when nothing works and the whole product is “standing” and the team is resting at home seems strange to me. But at the same time, I have a negative attitude towards the fact that a person processes without any reason. After all, this ultimately affects the quality. However, some colleagues are ready to sit at work until late at night or even spend the night in the office.

There is boredom and routine in the work, as in any other profession. Passing tasks that do not give you any growth. Sometimes they don’t even want to focus on them, but if you make a mistake, this can lead to serious problems not only for the stability of the system, but also in some legal claims. Therefore, even simple work should be double-checked at the end and then the task should be passed further along the process – to testing.

One of the unpleasant features of the profession of a programmer is “context switching”. To work on a task, you need to delve into its essence and details, look at previously written code, which may have been written not by you. This may take an hour. You start to do this task, and then again! – and the project manager asks you to switch to another, more urgent task or an urgent bug appeared on a previously implemented task. Now you also need to "plunge" into another task, solve it, and then re-"plunge" into the one you planned to do.

It happens that such moments happen: you do the task, everyone says that it is urgent, but in the end it turns out that someone did not take into account something or an even more urgent task appeared, and the task that you did half or completely is postponed “in distant box ”and loses relevance or generally contradicts new requirements. It turns out that you did this task in vain. It hits hard on motivation, you also need to be prepared for this.

Programmer development

The programmer goes through the following stages of development: trainee, junior developer, just a developer and lead developer. One who has leadership and organizational skills can become a team leader. And then you have to decide where you want to develop further: to the technical side as an architect, or to the managerial side if you like to supervise and guide people. In the end, you can become a technical director of the company. But, it seems to me, in general, developers are not very ambitious, they would not have to work on interesting tasks, and what is written in the work book is not the main thing.

To identify employee qualifications, performance reviews are conducted every six months or a year. We receive feedback from colleagues, form a plan for professional growth until the next review, and talk about our impressions of work.

Outsourcing and product teams

If a programmer plans to get a job in companies that work on order, you need to soberly assess that often people work there “to wear and tear”. There are always exceptions and different philosophies of companies, but in custom development, the more you do, the more the office will earn. It happens that there are no testers or analysts, and the developer fulfills their duties as well.

In product teams, on the contrary, the main thing is the quality of their product. Therefore, the work process is more structured. Therefore, the developers here are more relaxed.

The experience of outsourcing helped me a lot, because it brings you quick decision skills and self-organization. And in the product team, everyone will wait until the very end to clarify the requirements, complete details of the task, and only then the process will start.

For a novice developer, by and large it doesn’t matter where to start, you can grow professionally in any type of company – there would be a desire.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *