Am I a senior Front-End developer?

Nima Habibkhoda
CodeX
Published in
7 min readApr 2, 2022

Hello everybody, I am Nima a Front-end developer on Trengo.com.
I want to share with you my experiences with the Seniority level, it does not mean that I am (not) a Senior developer, but I found the path somewhat good. let me explain the path.

How can we evaluate our seniority level?

A true story

Let me start with a true story about the past when I experienced being a CTO in 2012, it was my first official role in a company. before that, I was a freelancer, without any teamwork experience. Bad experiences will give you good insights into the future. I was 21 and the company had no technical team till that day, I had this opportunity to convince them that I am a good developer, I was a Java and PHP developer at that time, and in my opinion, it was a reason why they convinced with my skills. There was no technical guy to interview me. I can say that I was the first technical person in the team that could interview others that were better than me. At that time I understood, that my seniority level would evaluate by the company level. It was not a good choice for me to be a CTO and that was the reason the candidates were better than me. Some years further I went to an interview as a candidate and it was so funny, they rejected me because my level was more than a senior developer, but it wasn’t, the interviewer had a wrong attitude. So you can not be sure that you are a Senior developer everywhere, there are a lot of factors that influence the seniority level.

Interviewer influences

This is a term I came up with. Company decisions are very effective, you need to be sure there is a person that is better than you ( not even the same as you ) if you want to evaluate our seniority level. At most interviews, you will know the name of the interviewer, it would be helpful if you look at her/his Linkedin page.

Hard skills

As you can guess, “Hard skills” are very important, IMO it is half of the way.
Hard skills are learned abilities acquired and enhanced through practice, repetition, and education. Hard skills are essential because they increase employee productivity and efficiency and subsequently improve employee satisfaction. “investopedia“.
Hard skills can be a good indicator of being a senior. who has more abilities, would have the chance to evaluate as a Senior in the company. At most, developers misunderstood the meaning of “more abilities”, usually the interviewer will count the skills that you have mastery on them, not a bunch of skills that you are a beginner in them. so be careful about what you are writing in your CV.

How can I improve my “Hard skills”?

I would highly recommend you to pass “Udemy” and “Frontend masters” courses and define your project on Github by what has been learned. It would be the start, having mastery of design patterns, algorithms, problem-solving ( you can try https://leetcode.com/ ), implementing pixel-perfect designs, delivering implementation with fewer bugs, software design approaches, and writing tests are the factors that will distinguish you from the others. What I want to mention is don’t look for many programming languages, languages are only tools, you need to know concepts and knowledge of software engineering.
As there are tons of resources to learn from, it is difficult to choose the best one, it depends on the developer's seniority level, you have to find out what is the question exactly?
Let’s start with some fundamental examples:

Fundamental problems (Level 1):
E.g: How can I pass the value from a Vue child component to the parent?
These kinds of problems are related to the fundamentals, you have to pass basic courses or read the Vuejs documentation at first.
Note: When you buy a vacuum cleaner, you have to read the manual and documentation before starting, otherwise, you will face some problems. so keep in mind, being a software engineer, is harder than working with a vacuum cleaner ;)

Level 2 problems:
E.g: Needs to create a React native bottom sheet with Typescript.
There are multiple plugins and tools to create a nice React native bottom sheet. are all of them useful and will cover your needs? of course not, so you need to know how are they working, then you can write your “bottom sheet” with Typescript. To start, you can read the Github source, ( this is a famous one: https://github.com/gorhom/react-native-bottom-sheet ).
Video and courses are not useful to solve these kinds of problems as you need to customize your solution.

Level 3 problems:
E.g:
How to implement Microfrontend with Vite and Svelte in best practice?
This is a programming deep challenge ( architecture problems ), you need to read related and technical books or articles, also I would highly recommend you to have a mentor that can guide you with best practices.
Note: One mentor can not help you with everything, it is better to have a mentor for every specific section.

Soft skills

“Soft skills, also known as common skills or core skills, are skills able in all professions. These include critical thinking, problem-solving, public speaking, professional writing, teamwork, digital literacy, leadership, professional attitude, work ethic, career management, and intercultural fluency. This is in contrast to hard skills, which are specific to individual professions.” Wikipedia
As the “soft skill” is a wide knowledge I just can share my experiences with you about them.
These are some titles that you have to be an expert on it: Teamwork, leadership, professional attitude, and public speaking are the most important things.
Teamwork: Having good collaboration in projects, meetings and other stuff in the team is a big point.

How can you improve it?
-
Do not hesitate to ask questions.
- Ask your colleagues’ strength to help you with problems.
- Clarify the tasks and organize meetings for this purpose.
- Organize pair programming sessions with your colleagues.

Digital literacy:
Don’t be afraid to use new technologies, it does not mean experiencing new programming languages ( Do not switch between languages too much), it means increasing your knowledge to use new tools and courage to work with new frameworks/libraries/architecture/techniques to increase your confidence.

Leadership:
There are 9 famous steps to improve your leadership skills, let’s take a look at them together.
- Practice discipline:
A good leader has good discipline, If you are naturally disordered, you may shorten your workload.
- Take on more projects:
having more responsibility would help you to be more disciplined.
- Learn to follow:
A true leader has no problem transferring control to another person if necessary, try to be transparent with your team.
- Develop situational awareness:
A good leader could see big problems before they occur, it will help others to trust you more.
- Inspire others:
Inspiration is one of the most important things that makes you a good leader, a good leader tries to encourage the team to learn more and be more energetic.
- Keep learning:
You have to be the most up-to-date on the team. No matter how good you are at coding, try to stay up to date and enhance your experience.
- Resolve conflicts:
Every team has a lot of conflicts due to different cultures and personalities, a good leader can resolve these types of conflicts in the team.
- Be a discerning listener.
- Empower your teammates.

If you like to improve your leadership skills, highly recommend you to read some self-help books like How to Win Friends and Influence People by Dale Carnegie which is the most famous confidence-boosting book.

Conclusion:

If you want to be a Senior Front-End developer, you have to improve your Soft and Hard Skills. There is a famous Front-End roadmap which you can improve your hard skills with: https://roadmap.sh/frontend , I strongly recommend you have a to-do list and try to achieve them. Rate them based on their priority of your office needs. Categorize your problems and try to find the best way to solve them.
Acquiring soft skills is a bit difficult, it depends on your personality and efforts. IMO It would be very useful to ask a leader to help you achieve your goals as a mentor.

I hope the article was useful and enjoyed it 🚀

--

--