This is an archive version of issue 1 of The Green Coder, a short experiment which has since morphed into The Fresh Engineer Podcast. Check it out for a continuation of these thoughts!
You've just started your first job, you're a week in and you've spent every day so far thinking something like this:
Oh no, I know absolutely nothing! How am I possibly going to do this task? Someone's going to find out soon.
Be it imposter syndrome, or the realisation that your mistakes can lose the company money, this can be a sucky thing to experience. But let me tell you, we all go through it, and it will pass. This week I wanted to focus in on that feeling and discuss a way to react to it.
When you start your first job in the industry there are going to be two things going on. First you're going to be using your skills in a professional context for the first time, and second you'll be learning about the company you've just joined. It's easy to conflate those two things into a single ball of panic and worry. However, I think it's important to try and draw distinctions between the two. Let me unpack what I mean in a bit more detail.
It's fairly common, especially for those of you from a university background, to land in your first engineering role and have a sudden realisation that you don't know nearly as much as the others around you. This is completely normal! You've had a sudden change of environment from a place of learning with peers to a place of learning with more senior folks and mentors. This shift can take a bit of time to settle in to. The style of learning is different, and the expectation feels different. It can often be easy to lose sight of the true expectation on you. When an organisation hires a junior engineer, the majority of the time, they expect you to start by knowing very little and to learn and grow over time. Let me repeat that: the only expectation for your first few months is to learn. Soak up as much as you can and don't worry about getting it right, this is your time space and opportunity to learn and make mistakes.
The only expectation for your first few months is to learn.
Usually I find most people are okay with the idea of spending a few months just learning. The part many people often aren't expecting is just how complicated the organisation they are working for can be. Every organisation is different and sometimes the hardest part of a new job is understanding how things tick. Departments, reporting lines, roles and responsibilities, the vision, the gate keepers, and the stake holders - learning all of this takes time. It's not something anyone can or will expect you to take in on day one, no matter how good the on-boarding seminars are. It will take you time to experience these different aspects or your organisation, and in fact, after a certain size the learning never seems to stop! I've been at Just Eat for over 2 years and not a week goes by where I don't learn something new about Just Eat.
It's very easy to feel like the forest of "new things" in front of you is never ending and that you're not good enough to find your feet. The truth is that usually as a junior engineer you're experiencing a large shift in two areas, where as many more experienced engineers just have the new organisation to deal with. It can be overwhelming at first but this period of learning is fully expected of you as a junior engineer and you will ramp up much quicker than you expect.
The commonality between all of these new things is that time is a great teacher. Over time you'll tackle each question one at a time and you'll start building an intuition of how to tackle the next few. In my experience it takes a junior engineer around 3 months to be contributing at a net positive. For the time prior to that, the full expectation is that you're primarily consuming organisational resources to learn. Even after 3 months you'll continue to learn and require time from your more senior team members, but you will most likely be contributing in a way that puts you in the positive. That said, I wouldn't expect a junior engineer to be up to their full pace until at least 6 months into a role, and usually I'd expect it to take even longer. This seems to be common across most companies I've worked at despite their size.
The one thing I find myself repeating to junior engineers over and over again is this.
Give it time, and give yourself grace.
Don't panic, ask lots of questions, know that everyone around you expects and wants you to spend the majority of your time learning. As you move up through the ladder of experience you'll come to have more expected of you so treasure the time you have to learn and make the most of it. Over time you'll find your feet and will start to pick up speed, and before you know it people will be coming to you with their questions.