# become a senior developer
## How to become a senior developer
search for How To Become A Senior Developer
### [The Developer’s Edge: How To Become A Senior Developer](https://zerotomastery.io/blog/developers-edge-how-to-become-a-senior-developer/)
a simple desire: You want to be considered a Senior Developer and you want to excel in your field.
not just how to become a better developer. It is a how to guide on optimizing your time with efficient and useful tools so that you get the most out of your life.
### What Do We Want?
- focus our attention on growing and learning, without burning out
- to be smart and efficient with your learning
### What Is A Senior Developer?
a senior developer is someone who brings an incremental benefit to the table
- Makes people around him or her better
- Thinks higher-level and is able to have a long-term vision
- Is able to communicate clearly and effectively with their teams
- Consistently delivers and produce business value
:::info
This is the important point: What value do you bring to your company/startup/business?
:::
If you are one of the few people who can bring an order of magnitude value (some people love the idea of 10x) to your company or business, you are a senior developer.
Senior Developer is not just a job title, but rather, the ability to use your experiences to provide real benefit to the stakeholders.
### How Do I Become A Senior Developer
If you are able to actively work on the skills below, you will be miles ahead of everybody else.
#### Developer’s Edge
There will always be people with more experience than you in a field but you can work smarter and in a more efficient manner to accumulate different combinations of skills to set yourself apart.
This not only makes you a better developer, it also increases your overall happiness because you are providing real value to people.
An often overlooked aspect of learning is that you need to specialize and focus solely on one thing. However, that's not how life works.
It's very rare in life that you require just one skill. Especially in a field like technology where things are constantly changing (who knows what Machine Learning Engineers will be doing in 5 years?), you need to have a diverse set of transferable skills that will make you adaptable.
#### 6 core skills to be considered a Senior Developer:
- Technical Skills
- be smart about what you focus on
- spend time understanding the WHY of a technology
- Why does this problem exist?
- Why does this framework exist?
- What problem is this library solving?
- have a good sense of all of the tools and ideas that can benefit the development lifecycle and pick the tools that will have the biggest positive gain on a project
- EX.
- focus on the pros and cons of each testing framework when trying to solve a real problem for their company/client
- What can be improved in our Continuous Delivery process to provide a better product?
- also understand HOW things are connected
- mind mapping is a great tool to get familiar with. It's a tool that can really push your learning to the next level.
- have a good grasp on the tooling and technology in your industry
- create a mind map of what problems products face as they scale and when premature optimization is a bad thing
- data structures
- algorithms
- other computer science topics
- focus the resources of your company on the things that matter most by having a broad view instead of a narrow focus
- Team Skills
- are good and don’t need to prove themselves to others
- write clean, simple code rather than code to try and show off their skills which is unreadable and ultimately detrimental to the other team members and their company
- willing to help others and they are willing to ask questions when they don’t know something
- Remember: how can you make those around you better?
- make managers, directors, scrum masters, and CTO’s lives easier
- Client/User Skills
- can be left alone with a client and can be a great listener
- offer advice on what the best steps are to move forward
- great at forming relations
- are not a pushover, but they don’t push their opinions on the client
- able to talk to a client or user and clearly see what their needs are
- understand that the goal is a non zero sum game where both client and developers gain from the interaction
- able to explain complex programming concepts to a non-technical person
- Start developing this skill by watching great instructors break down complex topics
- Growth Skills
- always learning something new each day
- always looking to speak to other developers, ask questions, or explore new topics
- know the whole spectrum and have a general understanding
- understand that learning everything is impossible
- choose to spend their time on things they enjoy and things that matter most
- Sales/Interview Skills
- able to get themselves in senior roles because they are able to communicate and sell themselves to people making those decisions
- are able to see the needs of your employer or business and you can instil confidence in them that you are the person to solve their problems
- confident but humble
- confident enough to take on those roles and be able to perform under pressure
- ask for promotions or roles that challenge them because they believe they are the right person for the job
- Although sales and negotiation may be seen as sleezy to some, it is a valuable skill that you need to acquire.
- Community Skills
- contribute to the developer community
- doing tech talks
- speaking at meet-ups
- contributing to open source
- writing articles
- share information with the industry
- go out and communicate with people in other communities which allows them to broaden their horizons
- more cultures you explore, the more you understand the similarities and differences between people, and the more you start to appreciate these similarities and differences
- You have to enjoy what you are doing.
#### Conclusion
you need to think differently.
- How are you able to stand out?
- How are you able to grow?
- How are you able to help people solve real problems and provide value?
:::info
- become a senior developer not by doing the easy things
- do the things that push and challenge your mind and comfort level
- learn and you adapt day by day just like you did the first time your wrote that first piece of code
:::
##
## read more
- [How to Use Mind Maps to Unleash Your Brain's Creativity and Potential](https://lifehacker.com/how-to-use-mind-maps-to-unleash-your-brains-creativity-1348869811)
- [Here is a great example of mind mapping for JavaScript developers.](https://www.youtube.com/watch?v=57GuRoJ5Bfw)
- [How to Win Friends and Influence People](https://www.amazon.ca/How-Win-Friends-Influence-People/dp/0671027034)
- [influence: The Psychology of Persuasion](https://www.amazon.ca/influence-Psychology-Robert-PhD-Cialdini/dp/006124189X)
- [Fixed versus growth intelligence mindsets: It's all in your head, Dweck says](https://news.stanford.edu/pr/2007/pr-dweck-020707.html)
- [The Science Of Deliberate Practice As Told By Hardbound](https://betterhumans.pub/the-science-of-deliberate-practice-as-told-by-hardbound-b771ba80d9be#.kvy9rsr43)
- [How To Negotiate Your Salary (exact scripts to use for ANY job)](https://www.iwillteachyoutoberich.com/blog/salary-negotiation/)
- [So Good They Can't Ignore You: Why Skills Trump Passion in the Quest for Work You Love](https://www.amazon.ca/Good-They-Cant-Ignore-You/dp/1455509124)
## h2
###### tags: `Research`