I have already received many questions from friends or on my Instagram related to what the programmer’s work really looks like. People who are starting to learn programming by writing simple loops or conditional instructions cannot imagine how this translates into real work on the software.
Of course, this is understandable! In my case, it was similar. Today, however, I have already some experience working as a software engineer and want to explain to you how it looks.
In the beginning, I would like to point out that this will be based on my experience and it does not always have to look the same, but you will surely find similarities with your current or future work as a programmer.
First day/week at work
This is certainly a stressful moment for everyone, regardless of their profession or position. This day usually passes by giving a tour of the office, meeting the team, organizational training and preparing the position for work. There will also download source codes of projects in which you will participate and other configuration works. This may even take the whole first week of work. If you join a large company, you can also wait a few days for certificates and access to certain things. So it is time to calmly blend in with the team and company.
Standard working day
Here a lot depends on how big a team you join in and what project management methodologies you use. Usually, however, the programmer starts his day with checking his mailbox to keep up to date with what is happening in the company. Additionally, it is worth to update the source code of the project you currently work in.
The daily status meeting is also a common practice in programming teams. During such a meeting, each programmer briefly says what he did yesterday and what he plans to do today. This is a perfect moment to signal any doubts, problems or ask someone from the team for help.
Types of tasks
Let’s assume that you will work in a software development company. In this type of company, the programmer’s tasks can be divided into two main groups: maintenance and development.
The maintenance consists of the fact that the company in which you work has a contract with the client that they will take care of the provided system. Tasks of this type usually have the highest priority and often appear in a dynamic way. It is to fix some bugs that make it difficult for the client to work, e.g. performing an important process.
The second type is development tasks that are associated with creating new features in an existing system or creating new software. These types of tasks are usually more interesting and preferred by programmers.
Implementation of the task usually begins with reading the requirements that have been developed by a business analyst after previous arrangements with the client and analysis performed.
Often, earlier the programmer also gets a task to do an assessment of the functional requirements, to estimate roughly how much time is needed for such a task.
If it is a service task, then you usually start by recreating a test case in which a problem occurs. Then you wonder and make changes to fix this error.
In the case of development tasks, you also get to know business requirements and wonder how to implement it best. Good understanding of requirements is key here, it is also worth consulting with your leader to evaluate your idea and maybe suggest something.
Cooperation with business analysts/product owners and managers
This is a very important element of the programmer’s work. If you think that being a programmer is based only on programming, you are wrong!
It is worth taking care of your soft skills. You must be able to talk to other people in the team. During conversations with analysts or managers, you will have to understand their requirements and translate them into programming. You also need to be able to explain what you are struggling with and remember that they are not strictly technically employees.
Don’t be afraid to ask!
If you will be a new employee of the company or it will be your first job as a software engineer, do not be afraid to ask for help! It is normal for you not to know how to do many things at first. Of course, some of your colleagues will tell you at the beginning, but they may also forget to mention everything. So ask, ask and ask again!
From a simple loop to a large features
I have not answered yet how does writing simple instructions compare with the creating whole systems and working as a software engineer. In short, it is a combination of all these simple structures. To get some practice, I recommend you to start creating your own application, for example, some online store or time management application. It will not be easy but it will give you a lot. Of course, you will learn most at work. You will probably get to know experienced programmers at work, who will introduce you to this world. Take advantage of this as much as possible!
I wanted to show you more or less what a software engineer’s job looks like. I could write more about it, but it seems to me that I have included important issues that will prove useful to you. If you already work in this profession, please let me know what your beginnings looked like and what you think about my article.