Whether you're just getting started or you've been in that Junior Developer role for a while, knowing what to do isn't always a straightforward proposition.
Everyone thinks you can do "stuff", but really, you're learning how to do "stuff" before you can do the "stuff" that they want to be done.
The technical tsunami that is coming at you (constantly) is enough to keep you up at night as you scroll google and forums for answers for scenarios that you can't be the first person to run into (and if you are, congrats, looks like you just became an expert).
Some thoughts I've had on leading Juniors and what separated the ones that nailed it from all the rest.
Take a moment and appreciate this video before from the greatest streamed show of 2021.
You always need to be practicing, no matter how good you think you are. Now, this doesn't mean you are working sixteen-hour days to make things work but what it does mean is you have some learning to do. School and what you did before this job only take you so far, now you are in control of your own destiny - and that can be hard to for many to realize. No one is going to be coming to you saying - "Today we are learning X" - instead it's going to be you, coming to you and saying - "I'm getting a lot of CSS bugs, but what I want are the React ones, I best be polishing up my skills.
When I was a Junior, this one question saved my bacon and helped to greatly destress me - "What's Next?". At the end of each month, I would have a very adhoc chat with my manager (maybe over lunch or coffee) and slip in the question, what they thought I'd be working on next. I'll be honest, there were a few times my eyes bulged in what I would be working on, databases, web services, etc, etc - but the answers were what I needed so I could start reading up on what I needed to know so when we got to that point, I was primed.
Note when I say I was primed, not perfect. I had zero experience in designing database back-ends but at the very least, I was going in with the concepts beforehand and now I could focus on the problem at hand while asking some more advanced questions.
Sometimes priorities changed (i.e., that 5 months I spent learning Java for that HUGE shift in the product we were going to build, and then we went in a completely different direction - but hey, now I knew Java - somewhat).
The biggest contributor I found to feeling like an Impostor when I first started out was simply that I didn't know what was expected of me.
Someone would ask me a question and if I didn't have the answer, I would freak out because I should have known it, when in fact (in complete hindsight) - that person was simply walking down the hall, had no idea who I was and asked the question because I was there and then went on their merry way.
Looking back on those moments, I tried to curb these actions as a Manager so as not to freak anyone out and instead ask the person that I think should know the question (i.e., the person working in that area or one we hired to do that specific task). All that to say, you need to know what is expected of you when you start.
This can be a hard question to ask because you will get some managers that respond back ambivalently with - "what I ask of you" or "code" or some other trite comment. My advice here, find the people, the Tech Leads, the Team Leads, the Senior Devs, you can help you navigate these waters. Someone will help you and if you can forget that informal mentorship with someone on your team early on you'll have someone in your corner for when you make a mistake (and you will)
And if you're still confused about what impact your background has (I don't have a computer science degree), where you started (self-taught), it's what you do that defines you.
And if you don't believe me, believe Batman.
Find your Community
I was late to the game on this and it wasn't as big a thing as it was when I was a junior. I went to meetups and user groups but those were every month or so between that felt like an eternity between them. We had user forums that were great, but I never thought to reach out to someone who was answering my questions on a form for help and support or to get a drink with.
I can't say this enough, BREATHE. It's not a sprint, it's a marathon and you are going to stumble, get up, fall, switch jobs in between, and do it all over again. This field is a lifelong journey that never ends, don't burn out in the first few years. I loved being a junior, cranking out code as much as my fingers would allow me, and most of it now would make me laugh.
There is no perfect coder, there is no best coder in the biz, there are just a lot of great people contributing to great products and teams - be one of those people.