Treat your first year of software engineering as subsidized education

Your first year on the job is not an application of your undergraduate degree. The company is not paying you because you learned Dijkstra’s algorithm and can implement it for them. With regards to software engineering, your manager knows you know nothing, your coworkers know you know nothing, and you know you know nothing [0]. Any time during work anything you learned in school feels useful, it is a delight, like finding buried treasure.

The similarities between most software engineering jobs and academic computer science is the foundation. Your main advantage (other than aptitude, however that was assessed in your interview) over a random body is that you share this foundation with your coworkers: the ability to write/reason in programming languages. Past this, the intersection of the problem space venn diagrams is quite slim. You should view software engineering as a branch of computer science rather than a progression of it.

In the vast majority of computer science degrees, a single class is spent on any particular branch of computer science, whether that’s security, databases, whatever. Doing a back-of-the-envelope, in the typical four year undergraduate education consisting of 2 semesters a year and 3 full-unit classes per semester, you’ve spent 1⁄ 24 (~4%) of your education being actually trained for what you got hired to do, and that’s if your university had a class like that. Even your coworker, who’s making you feel imposter syndrome because they’ve been there “only” a year longer than you, has been spending 100% of their working hours taking the “software engineering class”. And their class was probably way more helpful/relevant and more recent.

You should not feel like you are scrambling to be as productive as everyone around you, because that’s not a reasonable expectation of you. Instead, approach it like you’re being paid to learn something new. Treat your first year on the job with the same dilligence as you would trying to get an “A” in a class. Don’t be afraid to raise your hand, your coworkers are happy to mentor the new student. There’s no graduation, of course. You just gradually become more useful. For any new grads getting started in the industry, please don’t feel less deserving to be wherever you are.

[0] Companies know this. You don’t have to explain this to your boss. Companies know experienced engineers are much more useful, and they show it with increased pay. They know they’re not getting that when they hire a new-grad. They’re getting someone who boosts office morale, a student for their workers to mentor (a useful skill by itself), a willing engineer for the small stuff more experienced people don’t want to deal with, and, if they’re lucky, a future productive worker. I’m missing a few other benefits that come with hiring new-grads, but emphasis on the last point.