You just got your first programming job and you are both excited and terrified at the same time. And rightly so as software engineering professionally is a whole different experience than software engineering in a school setting, or in a learn at home setting. Now you're getting paid by someone to do whatever it is that they are going to assign to you. And more than likely, it's probably something that you've never done before.
But fear not. Usually your anxiety comes from the many random ideas that occur to you about what's about to go down. And your fear of getting fired so early on probably isn't valid at this stage. Rest safe in knowing that you probably won't get fired even for deleting databases and bringing down sites.
Setting up your work environment takes a while
Most companies that have been around for a bit usually have internal business processes in place. You'll normally require access to everything pretty much, from the code base to the 3rd party software that is running somewhere to your email and payroll information. And this takes some time to get to your hands from whomever is responsible for it. So prepare to spend the first few weeks in this setup process. It's awkward sometimes, as you are essentially getting paid to install software and such, but fret not. Nobody cares. Everyone had to go through that same process at some point and it is a part of the game.
Not that this is a time relax mind you. It's important to see how the internals of a company work. This is when you get to learn who to go to for software and passwords and such. And really it's when you get to ask for help from your new co-workers and get to see who you are going to be inevitably going to lunch with.
On-boarding takes time
There is also the concept of onboarding, which will equally take some time to polish out. You'll be busy filling out paperwork for days and days. You'll be watching videos on what not to do, and what to do and you'll be attending meetings in order to get you familiar with the corporate aspect of your new job.
If you work for a smaller company however, or a startup, you can probably bypass most of this onboarding. The bigger companies, the more legalities need to be accounted for. Needless to say, this won't be the most exciting first few weeks of your life as a programmer.
And if you are working for a larger software corporation, then prepare to spend some time going over technical documentation. Sometimes a few dozen pages, but other times a few hundred pages. Not that you have to memorize each and every word, but usually a quick glimpse through the whole thing is more than enough to help get you up to speed.
You don't know how the business works, and that's alright
Off the bat, you can't really work on anything until you know what the business does. And you won't know what the business does until you begin to work there. So relax. You really aren't expected to code anything for some time. At least a few weeks. You'll probably be tasked with shadowing someone who's more senior and who has the time to show you the ropes.
There is no training from anywhere that will prepare you for what a company requires as far as work is concerned. Each company has their own separate needs based on countless variables and you will have to learn these variables.
My first job involved working with sales software for a publishing company. Needless to say, I had no experience in either sales software or with publishing. But my title was Jr Developer, so that was expected. After 2 weeks of sitting daily with another junior programmer, but still more senior, developer I was tasked with handling some of their work as they were given more complex work. Eventually, I ended up doing that junior's developers tasks, while he climbed to mid level developer. And eventually, I was tasked with mid-level work as my knowledge with the software and with the company grew.
There will be more senior developers present
You won't be in charge of anything. And more than likely, there will be some friendly face to guide you most of the way on most of your tasks. You can be phenomenal at coding from a younger age, believe me. But you won't know what anything does or where anything is, and so essentially, your skill isn't really useful just yet. It's a humbling experience for sure.
But once you understand and know where things are and what buttons not to press, then your skills will propel you forward incredibly fast. You'll never fully be above anyone, and that's important to realize. You aren't climbing any latter usually. You are just there to learn and to lend a helping hand whenever you can.
It's actually pretty fun
The most shocking thing about your first junior level programming job is that it is indeed alot of fun. For many reasons, but mainly that you have little responsibility and that you will be learning an insane amount of content daily while getting paid. You'll be a part of a coding team more than likely and people will walk by in awe at your magical coding ability. And that is not an exaggeration. The IT, coding, dev departments are usually mysterious to most at a company feel proud that you are mysterious to some extent.
Not that you won't be busy. But you will genuinely enjoy what you are doing, so it won't feel like you are too busy. From personal experience, both as a junior programmer and as someone who worked with junior programmers for years, it's always much worse in your head than in reality. People are kind and they laugh at your mistakes and help you get back up. They will stay extra hours or come in early to help guide you along the way. And they will smile the day you sit with them and help them solve a tough problem. Not because you helped them, but because they saw your progression and because that genuinely makes people happy.
Walter G. is a software engineer with over 10 years of professional experience. When he isn't blogging or being a CTO he enjoys coding randomly complex things that he hopes many people will get a chance to use one day.