DEV Community

KamranMoazim
KamranMoazim

Posted on

Any Senior Developer here ???

I need some help.
Like what will i have to do to become a senior developer
Like i know a lot many things like MERN, MEAN, Django DRF, FastAPI, Spring Boot, MYSQL, MONGODB, Docker, AWS services and many more things
Even I have made Projects in these technologies BUT still what would I have to do TO BECOME A SENIOR DEV.

now a days I am focusing on spring boot and learning Design Patterns.

What roadmap should i follow to become a Senior Backend Dev

If i see the internet Roadmaps, then i know all the things that are mentioned in those Roadmaps,

I wants to have a connection with a senior dev who is working in Industry so he may guide me.

BTW i am a university student.

Top comments (5)

Collapse
 
joelbonetr profile image
JoelBonetR πŸ₯‡ • Edited

This is a copy-translate-paste from a LinkedIn post of @midudev which is a reference to me, all credits to him on the major part of this text:

What is expected of a Senior in Programming?
➱ You agree that the code is not set in stone

  • The code will change. Your favorite framework will change.
  • You don't always have to be right.
  • You can do experiments and the code is not perfect.
  • You do not need to review all the code that is uploaded.
  • You can keep learning from juniors.

➱ Solve problems

  • Understand that the code is the means, not the end. He knows the importance of the business.
  • He has proven experience and can work autonomously.
  • When there is a problem, he is able to pull the trigger and explain the reasons to the rest of the people.

➱ Impact beyond the code

  • He's not throwing lines and lines like a hero. It's not itching.
  • He also mentors people, is in meetings that impact decisions.
  • It helps to prioritize and proposes solutions to achieve the objectives.

➱ Knows how to communicate

  • You can program very well but if you don't know how to communicate or to communicate properly... You need to work on that.

  • To know how to communicate, you have to know how to actively listen to your team.

  • Create a safe environment where every opinion matters, knowing how to empathize and speed up the team.

➱ Empower and work to be expendable

  • Someone who is Senior works to be expendable.
  • Help others to grow, trust their decisions, allow other people to make mistakes so that they learn.
  • Does not do micro-reviews of code. Advises but empowers.

➱ Masters good practices but concedes

  • Understand the importance of testing and good practices.
  • You know when you really need to refactor and to what extent.
  • He is able to transmit those values ​​to others.
  • Understands the importance of giving value to the user/customer.

➱ Has data and understands the risks

  • It is concerned with observability.
  • He knows how to extract data to find technical improvement points.
  • He anticipates possible problems without falling into the YAGNI.
  • Understand the risks of decisions.
  • Prioritize maintainability ahead of hype.

Hope it helps! If something is translated wrongly tell me and I'll do the best to improve (I'm on vacation and just have the phone so bear with me πŸ˜…)

TLDR; what @dennistobar and @phlash909 said but adding business view into the product and it's nuances, being able to take decisions from the point of view of knowing the technologies, understanding the business and being able to communicate and act as a "glue" between teams. Doing so at a greater extent makes you, usually a tech lead.

That's my current role and I like to think that I'm just that, the glue that holds teams together. Giving support and solving any issue that may appear inside or between the teams (or between teams and clients) and defining how the implementation of a given feature or product should look like (architects work on a higher level of definition, I do it closer to the nuances).

Best regards

Collapse
 
dennistobar profile image
Dennis Tobar

Hi!

Short Answer (yup, the same roadmap)

Long Answer: seniority is about how you resolve problems, not the number of technologies you have written or understand. Don't try to be a Senior Dev. Instead, try to be a good developer and understand how the languages work and how the design patterns could help to express a problem into code. Another valuable piece of advice is to try to focus on one or two stacks, not more, not less, and keep reading to stay updated about new technologies and changing versions of your tools.

I'm sorry for not being a good advisor, but I learned a lot about this world without a goal ("be a senior dev" is a goal), and my focus was trying to understand how things work.

See you :)

Collapse
 
kamranmoazim profile image
KamranMoazim

Thanks Dennis, it was to the point, I will try to be a GOOD developer.

Collapse
 
phlash profile image
Phil Ashby

Much as Dennis has described, it's all about your behaviour when presented with challenges in the work environment. Typically a Junior doesn't have the breadth of technology experience or familiarity with the product(s) to make well reasoned decisions (and in a good company / work environment they are happy to say this!), a senior does have the breadth of knowledge across both technologies (that you are ploughing through now) and company products (aka domain knowledge) to make well reasoned decisions, that they can explain to the team (again, in a good environment they can ask the team for feedback, and be able to listen to everyone!)

Another trait of senior developers, they are able to communicate effectively with both their team, other teams and the business (if there is one), often acting as a conduit of useful information for all parties.

Collapse
 
colinmtech profile image
Colin Morgan • Edited

Change your mindset. Stop thinking that being senior means learning frameworks and tools. Instead, learn industry standards for things like security. Learn how to properly design a system. Learn how to lead and handle large production issues. These are the types of things I expect of a senior.