Everyone is looking for efficient paths forward -- so what is the most efficient way to go from a junior developer to a senior developer?
Well, it depends.
📄 Auto-Generated Transcript ▾
Transcript is auto-generated and may contain errors.
good morning it is Monday January 20th 2025 I have a question here from the comments on YouTube says hi Nick can you please go over the most efficient way of going from Junior to senior Dev and I thought I'd talk through this give some different perspective so if you want your questions answered leave them Below in the comments or look for Dev leader on social media send me a message with more details I'll keep it fully Anonymous for you um this is a tricky question to answer and when I have to answer questions like this sometimes it feels kind of bad cuz I'm like I want to give helpful advice but it ends up being very generic because when you want to cover a lot of surface area with an answer it like kind of has to be generic and when I was thinking about
how I want to go about this I I want to like try to extract some like I don't know like meta principles in general so uh for this individual it's going to be tricky to say okay like here's the road map and I think that's what a lot of people want it's like okay if you going to be starting out and you are going to be a beginner right and everyone starts there every single person that gets into this starts as a beginner as a junior people are looking for efficiency right if I can learn from other people I can learn from their experiences how do I go from point A as a beginner to point B C D whatever um sort of as effectively as possible like why should I have to waste more time if I can learn from you and we apply
this kind of thinking personally I think like to like everything in life right like you want to lose weight what's the fastest way that you can lose weight if you want to gain muscle what's the fastest way you can gain muscle you want to learn a new language what's the fastest way that you can do that like what's the most effective way so for this kind of question the most efficient way of going from a junior senior developer it's like I get why people want to ask it but um I think I wanted to just kind of address that like a lot of the time we look for shortcuts and the shortcut is not really um the shortcut is recognizing there isn't really a shortcut is kind of how I want to say this um if anything I would say the shortcut is being focused
on the things that you need to do but those things that you need to do take time so it's like it kind of feels like a crappy answer right so um maybe we can take a step back and talk about like when we talk about a Jun developer what does a junior developer look like compared to a more senior developer and I would say a couple things that stand out are like I expect Juniors aren't fully autonomous right like someone comes in to to work on my teams um I expect that they're going to they need ramp up time uh in the language that we're programming in in the Tex Stacks that we're using in the domain that we're in right domain's a huge one and uh I I wanted to pause pause on this for a second because when we talk about transferable skills
you'll hear me talk about it doesn't matter what programming language you know or your Tex Stacks whatever because you're going to learn different ones you're going to apply what you know to different ones um that kind of stuff is very very transferable okay like programming languages look similar enough and don't get me wrong some of them I don't really like but they look similar enough where if you spent time and you know one you could learn another same with Tex Stacks um with domain it's very interesting what I mean by domain is like what are you developing software for right so I I spent time working in digital forensics before Microsoft that's a pretty specific domain digital forensics but even within that there's domains for computer forensics there's domains I spent a lot of time in Mobile forensics like for mobile phones there's Cloud forensics
um and this is all digital forensics part of a larger forensics group um I spent time working uh in embedded development for uh for essentially being able to uh you know immunize medicate farm animals a completely different domain I've worked in you know uh Bank machines ATMs building desktop software to customize ATMs like all sorts of stuff right so those domains you may be even if you're an experienced developer a senior developer you may feel like you are a junior in terms of the domain and getting ramped up so I just wanted to comment on that because if depending on why the person's asking this it's like if you're trying to talk about like being comfortable you may get very comfortable in terms of your programming language you're using your text stack but you may find between different roles if you're working different domains you
may have this like feeling of oh crap this is very new uh maybe it feels kind of scary it's uncomfortable but like you know you'll pick up on the domains as well transferable skills between domains become very interesting so I just wanted to to make note of that because um just to give you a brief example I worked in digital forensics like I mentioned and digital forensics is often about uh sort of structuring unstructured data and then making the data tell a story if that makes sense like we need to understand what was happening a timeline uh attribution for what's changing what data that kind of thing and like now I work in uh routing uh so work in the routing plane for Office 365 and you might say okay well that's completely different than digital forensics and you're right but something that's interesting and
transferable between the two is that when we're talking about routing we can talk about the lifetime of a request so we have a data trail what's you know what's setting the the markers that we see you can talk about sort of how the data tells a story so there are some like as you're kind of navigating your career you can start to look for some commonalities even between domains and kind of have transferable skills that way um won't always line up like that but just something to think about when we talk about Junior to senior okay um autonomy is one big part that I expect seniors become more and more autonomous autonomy does not mean working in a silo though and I think that's important to note when I say autonomy what I mean is that you don't rely on other people as much for
the decision making again that doesn't mean that you go off on your own do everything on your own never talk to anyone pardon me hiccup um I don't edit these videos right so you get to see all the the fun stuff um so it does mean that you are able to start forming your own opinions it does mean that you're you are Consulting your team right sharing designs with them reviewing things with them collaborating with them but it doesn't mean that you go to the senior person every time and say hey like I need you to help me pick which one you instead kind of flip things around and you say I've done some some research I formed an opinion I'm presenting the path forward I think and now I would like your opinion on if you feel this is a good path forward any
holes that you can poke in this and if there's Alternatives that we should explore but you've kind of done most of the the homework for lack of better phrasing on the scenario whereas someone that's junior is kind of like I need help understanding where I should even be looking and there's nothing wrong with this by the way I'm not saying this like it's a bad thing this is actually what I expect from from Juniors you know where should I be looking now that you've given me a couple of directions to go look I will go try looking in those directions and I expect that Junior probably get stuck doing that and that's okay so cool you're getting stuck exploring that direction let's come back and talk about why you're getting stuck right these are like the getting stuck you'll hear me talk about this a
lot I think that's one of the best ways that we learn is you get stuck and then you have to kind of get unstuck that's the learning part um I would say that I have an expectation of seniors to be mentoring more Junior people um different companies different teams and stuff will have a different sort of amount of this right it's really difficult to Mentor Junior people if you're at a startup company and there's three people on the team and it's two senior devs and like the the founder or something like who are you mentoring and you're classified as a senior right you might say it's impossible for me to Mentor there's no one on the team to do it I get it uh these are generalizations right um but on a team that's maybe more well-rounded in terms of like junior midlevel senior principal
or staff however you'd like to call uh these levels I would expect that at a senior level you are um trying to find Opportunities to mentor and coach and and help along the more Junior people on the team okay so that means again not only are you not working in a silo you are collaborating with other people but you're helping you're reaching that point where you're starting to enable the more Junior people on the team helping them kind of break through some barriers so you start to become a multiplier in that regard again different teams different companies have different expectations around this but I have never worked been an engineering manager for 12 and a half years I've never been in a position where we looked at seniors as not having any capacity for mentorship we I worked in sort of different uh situations where
we have uh sort of an understanding that some people have a different capacity for that right and in some regards I've seen very much that people that really lean into the mentorship and stuff they end up having a path that's maybe more towards potentially more towards management or like a team lead kind of thing um and others where that's just not the case but they do it they do it um not not because they have to but they do it sort of because it comes up and they're like cool I've done it but like I'm not going like super out of my way to do it all the time um and that's not necessarily a bad thing especially if they have other skills and stuff that are kind of bringing them up but that's that is an expectation some amount of that and the other
thing that I wanted to mention with respect to seniors is like the the scope of impact in their work is greater and that's often achieved by doing uh collaboration so even within the team so being able to lead projects and have kind of other people on the team uh facilitating some of the work for that so they're delegating workout or cross teamw work so you're working with another partner team on some project perhaps you're the one leading it don't necessarily always have to be leading projects it's really difficult to be leading like 10 projects but you might be leading one and participating in one or two others or something depending on your workload but the type of work that you're doing is more impactful and well what does that mean well it means that you're working on business priorities that are more important than some
of the other things are higher priority they might have more visibility in terms of the business impact they might have more of a monetary impact they might be unlocking more technology right so sometimes tasks that we're giving to more more Junior people are more confined they're more the constraints are more well understood right sometimes we'll be giving Juniors tasks where like we know we know how to go do it we just haven't done it yet it's important or we um we understand that there's a bug somewhere a smaller feature we want to build we have a rough idea how that might look or some speculation maybe what's causing the bug but we haven't actually proven it so okay go take that step to prove it maybe you find something else and then go fix it but it's very much more scoped um and then on
the on the impact side I was mentioning like collaborating with others I think like your really what starts to shine is like your technical skills will continue to grow and that's kind of just expectation will keep happening but what really needs attention and I say this because I find that a lot of software Engineers generally don't focus on this what really needs attention is that your soft skills are continuing to improve and you will quickly notice if you are soft in my opinion I hope you would notice that your soft skills are lacking if you're trying to do leading of projects if you're trying to collaborate across teams and you're finding that there's a lot of friction you're finding it difficult like I can't I can't see why I'm not getting people to collaborate or get on the same page like regularly with everything you're
doing um it could could also be the people you're working with happen to be a particular way maybe their soft skills are lacking as well but you'll you'll start to notice like your soft skills really start to play um which is why a lot of the time I try to remind people early on don't neglect these people are so concerned with their technical skills early on because we're software Engineers I get it but um we end up neglecting the soft skills like who cares right like it's communication I can I can send a message I can write an email I can write code I can read code I can read emails like what do you mean like I need to work on communication right but like the reality is like finding effective ways to communicate I even had I was sharing this on uh where
I don't know where I shared this um I made a oh I have a I have a third YouTube channel where I do like weekly check-ins for myself I've been doing it this is the third year now it's almost like a video diary that I put on YouTube no one watches them but that's okay um and I was saying in that that I actually had a big presentation that I did earlier this week well last week I guess because it's Monday now and um I like I failed to communicate effectively in that presentation which sucked right but like that's a it's just a reminder that like um just a brief example it's like the content and the topics that were there I felt like were very much still on point even given the feedback but I feel like the the way that it was presented
did not articulate um almost like a cohesive strategy that we have so the result of that is that it looks like I don't understand what's being put together here when I say I don't I mean the audience that is receiving it is like I don't understand the direction of this so if they don't understand the direction of it then I failed to communicate effectively and that's okay because now that I have the feedback I know how to go transform it or I believe I know how to transform it in a better way but even at principal level from being in the industry for over 12 and a half years and having to do stuff like this I still have room to improve on my communication I make YouTube videos right I've done over 400 YouTube videos I've written uh hundreds of blog articles I post
every day on social media I still have room for improving my communication so as you're advancing from Junior to senior the expectation is that your soft skills are also increasing it's not just communication I'm just giving you one example of soft skills so the most effective way so becomes kind of interesting my recommendation when we're trying to think about the most effective way is trying to think about how to uh and and Junior to senior is not it's not like a quick path you and if you want the shortcut the shortcut is like go to a startup where they'll slap a label and say that you're senior it's like what's the the fastest way to be CEO it's like just go register a company and call yourself CEO you did it right but like is that is that actually what you I don't know um
that's the quickest way you know could have made the video that fast say start your own company give yourself a title and you're done um it only costs a few hundred doar to go register so but I don't think that's actually what people are asking for I think they're trying to say like what are number one what are the qualities that we need to be trying to address and number two like how do I go put that into practice so if we're kind of starting from some of those things that I was mentioning I think working on building up your autonomy is important that doesn't mean stop asking questions it means asking better questions so how you're framing your questions like do your homework first then when you're going to ask for help try to see like okay I've done a little bit of background
work here and now that I've done some of that research like can I form an opinion about this so instead of just going to someone and saying hi I'm stuck and then them saying well what have you tried you can say look okay I'm stuck here I've tried these two or three things I actually think that the third thing here is the best approach forward here's why I think that but I wanted your input on this because I'm not actually sure if we see a or b as being more valuable or maybe I don't really understand if that's going to be a longer time commitment versus this other path like show that you've done some investigation and that you have formed an opinion and then you're looking for feedback on it I think that's a really good direction to start moving in and that takes
time I'm not not telling you this like you can snap your fing and it just happens I'm telling you this because as you're practicing these things because all of it will take practice as you're practicing you can start to say hey like am I transitioning from just asking straight up questions like hi more senior developer I'm stuck and don't know what to do to hi I've done some homework here maybe I had to get clarification from you earlier but I've done my homework now and I'm forming an opinion on this and I would like your thoughts on my opinion given this data right so that's kind of moving that in one step forward there the um this is a tricky one but like your throughput of work I guess is a bit of a factor too um this will look very different depending on the
type of work you're doing um the team structure like there's so many variables which is why I'm like I can't just sit here and tell you you need to have two poll requests per day and now you're a senior like doesn't doesn't work like that but if you think about the complexity of work that we might give a junior person we might expect that would take longer um even for something that's more simple whereas someone who's more senior maybe can at the same rate get through a couple of things that are more complex perhaps right so you want to be making sure that you're looking at your rate of delivery of work and making sure that you can be balancing that properly have convers you should have conversations with your manager about this for sure level set on the expectation there and try to be
demonstrating that you're making progress not to overload yourself with work because I want to bring up another gacha here not to overload yourself with work but making sure that you're making progress that is at a uh you're demonstrating a rate of improvement especially in the beginning right ramping up in something it's expected it's going to take you longer of course anyone that doesn't believe that is like sort of failing to acknowledge that like someone who's new to something is going to have a ramp up period so have a conversation with your manager about that ramp up and like where those expectations are I think that's one of the best ways to get clarity on that because a lot of people that I talk to have questions am I doing enough is this fast enough am I falling behind right like have a like when they
come to me if I'm managing them that's a great conversation to have then I can bring Clarity and say like hey yeah you've been in this space for a little while now I I expect that you know the domain a little bit better so yeah maybe at this point it would be good to start seeing if you're able to uh maybe balance a couple of work items at the same time now our team is a little bit unique and that some of the changes take some time to roll out perhaps so maybe they need to juggle more things whereas previous teams I've had I don't want people working on things in parallel unless it's like a research task which is almost like no coding at all and then some code commitments but these are things that we talk about on our team so have conversations
about your throughput make sure that's going in the right direction and then over time which should start happening is that the work items that you're assigned you start to have less of a dependence on other people to get them done if they're assigned just to you okay so that will happen and then over more time you will start to transition to you have a dependency on other people because you are leading those things but that's because at that point you're working on larger projects that you need to delegate work to other people that you need to start coordinating efforts across other people but this could take a significant amount of time like this could be years and that's not a problem from my experience if you're working at startup companies this isn't every startup but if you're working at startup companies generally some of these
things move very very fast in comparison and that's because teams are small everything about the business is trying to get things going it's a lot of Fast Pace pivoting lot of work coming up uh lot of Direction changes whereas I find at larger companies it's a little bit more steady state so some of those projects are already sort of decided there's a less pivoting so if you're not in a larger company that work might be more structured and it's not like you're sort of accidentally getting this opportunity to go lead this project whereas in a startup it might be like someone's got to work on this thing and like it doesn't matter what your title is go go do it and you're kind of forced into these situ where you're like I don't know what I'm doing but it's got to get done I feel
like that happens a lot more at startups at least from my experience that's how I became a manager so um still figure out what I'm doing so I think those are some of my tips that I would recommend I acknowledge that that's not like a here's a road map kind of thing um but maybe the final send away because I feel like I can't make a video on this stuff without saying it but like talk to your manager right if you're not if for the person that was asking this if you're not yet employed I would say when you get employed and you're like okay I'm a junior and I want to focus on my career development please have a conversation with your manager the things that I shared with you in this video I feel like are General these are things that I think
should be applicable regardless of the team and stuff that you're on but the best way to be making progress is to be talking to the person that's going to be influencing your promotions it's going to be your manager now you may work at places where you have a crappy manager you may work at places where you have a good manager but ultimately if you're staying at a company the person that promotes you is the manager that doesn't mean you know kiss butt and you know like it's it's all just like yes yes sir yes ma'am to everything but it's about like understanding the expectations they have and working towards that and as you get more experience you may find that like perhaps you do have a good manager that's really supporting you in the career Direction you're trying to go in other cases you might
find that you have a manager that's not supporting you and despite having conversations about it and trying to get more clarity it's not happening that might mean that it's a it's time for a different team different company perhaps maybe the culture is not not right where you're at um but these are things that will take some time to recognize so shortest path most efficient way I don't really have a you know a next three simple steps to being senior in in four months doesn't really work like that um unless you start your own company and give yourself a title but those are the things I would recommend focusing on I hope that helps if you have other questions please leave them in the comments happy to try and answer them for you or look for Dev leader on social media send me a message and
I'm happy to try my best to give you my thoughts till next time take care
Frequently Asked Questions
These Q&A summaries are AI-generated from the video transcript and may not reflect my exact wording. Watch the video for the full context.
- What are the key differences in expectations between a junior and a senior developer?
- I expect junior developers to need ramp-up time and not be fully autonomous, often requiring guidance on where to look and how to approach problems. Senior developers, on the other hand, are more autonomous, able to form their own opinions, consult and collaborate effectively with the team, mentor juniors, and handle work with greater scope and impact.
- How can a junior developer improve their autonomy and decision-making skills?
- I recommend juniors start by doing their homework before asking for help, researching the problem, and forming an opinion on the best approach. When seeking feedback, they should present their findings and ask for input on their proposed solution. This practice of asking better questions and showing initiative helps build autonomy over time.
- Why are soft skills important for advancing from junior to senior developer roles?
- I believe soft skills, such as effective communication and collaboration, become increasingly important as you advance. Senior developers often lead projects and work across teams, so lacking soft skills can cause friction and hinder progress. Improving these skills is essential for leadership, mentoring, and making a greater impact beyond just technical ability.