Mert Koseoglu

Senior Software Engineer

August 30, 2021 • ☕️ 3 min read

Translated by readers into: Türkçe

Every software developer has a position within themselves. Even developers working as interns are senior engineers in their own right. The important thing is to make a decision. Contrary to popular belief, engineers should not expect to be awarded the title of senior by a manager. They should work as senior engineers and ask for the promotion when the time comes.

A senior engineer cares not only for the work assigned to them but also for the details of the work. This process specifies the actions to be taken in the short and long term and contributes to improving the roadmap.

A senior engineer must make good or bad decisions at the end of the day. They will be expected to make the right decisions based on their experience, but this may not be easy in practice. There are many parameters in a decision-making process, such as product, team, and roadmap. According to these reasons, a senior engineer may not always take the best and correct solutions. In such cases, they should be able to take responsibility for their decision.

A senior engineer should value the breadth of the subject as well as the depth of knowledge.

A senior engineer should be alert in wrong or suspicious situations and should change their mind when they realize the problem. They should never be fixed-minded and should always share with the team.

A senior engineer must have experienced closely that writing code alone does not produce value.

A senior engineer should know that any line of code written without considering the use of Git, without applying test-driven development, and without documentation is not an investment for the company and the team in the long run.

A senior engineer should develop with the needs of the product and the company’s needs in mind.

A senior engineer should follow the dynamics well and contact a leader who can resolve the process when they feel there are problems in the team.

A senior engineer should be a domain expert on all the details of the code-base they are working on.

A senior engineer should identify the points that need improvement in the long and short term on the code-base, present possible solutions in meetings, and share them with the team leader.

A senior engineer should write documents on the features they develop or on more detailed flows.

A senior engineer should know the flows that automate the process of product development.

A senior engineer should follow code standards and always communicate with the team to set the rules.

A senior engineer should provide sound leadership to junior engineers. They should be able to recognize the shortcomings of their teammates and support them when necessary.

A senior engineer must be aware that they will never be fully competent in any subject and accept that self-development is part of the job. They should not forget that they cannot know everything and there are always better people than them. Software is the main subject of an ongoing process. It is the job of us engineers to develop it. In this ongoing process, the team should know how vital the importance of these issues is. It cannot be dominated by information and developing applications that are renewed every day.

A senior engineer should assist the team leader in matters related to the team in the recruitment processes.

A senior engineer should be open to communication and should use a precise and gentle touch. They should be in regular contact with the team leader and should be able to present the work report when necessary.

A senior engineer should be able to take charge of the team when needed and complete their teammate’s shortcomings, support, and raise the unit.

A senior engineer should know that this position is not just about technical knowledge but more about comprehending the general aspects of software development processes and product ownership.

A senior engineer should do business so that other teams can progress more efficiently. The goal is to move forward as one, and the purpose of the work is to assemble the needed parts.

A senior engineer should be more careful when communicating with teammates who don’t have a technical background. They should involve their teammates as much as possible and try to agree on a common language. A senior engineer should understand the importance of meetings. They should take notes, follow up, take action, and share the results.

A senior engineer must earn the absolute trust of their teammates and ensure that they will deliver a job assigned to them, for better or worse, with confidence.