Job didn’t make me better developer

I got a job and after a few months of work my code didn’t improve, nor did my problem solving skills… This wasn’t what I expected.

Photo by Dev Asangbam on Unsplash

What I thought will happen at work

Having magical high quality code and code reviews that would make perfect code. It was shiny imagination I had and I was so blinded by that. I started working a few months ago and the first thing I knew was, code reviews are not magic. They will make some pieces of my code be better, if I used unnecesery method or left out a comment. Maybe if there is potential performance issue, however I expected during code reviews to find bugs, as another wall of defense. I was wrong.

The one person to prevent bugs is me

My code will have as little bugs as much as I tested it and how well I broke it. Now, I have to do this fast because deadlines are short and stuff needs to be done quickly. This took me back to time when I was reading c++ book from bjarne, there was a chapter to make calculator and to make it use regular grammar. I made calculator along with him but he requested me to break it and see what won’t work. He mentioned a few tactics to break the code, among which was to put in random digits. Then he proceeded to explain all the flaws calculator had that I did not even think of. After this chapter I have quit learning from that book because I started doing web development and just left in thoughts how I will learn to break the code and prevent bugs in the future. Fast forward a year later, I still haven’t improved since that point.

Tests won’t write themself

Tests require me to write down every thought about my code that might break it, afterwards to write in the tests. As I’m writing functions and do those prints to see if value is what I expect it to be, test should probably contain that condition aswell. This brings me to thinking that test driven development is a good thing and that me as a developer need to think about tests before functionality. Or at least, what should my feature/bugfix do and what should be limited. Since my thoughts go fast during this process, I am trying to build a habit to write thoughts down and create tests for each worthy thought.

Code will improve only if I improve

I thought job will teach me to become better developer, and in a sense it did and will. I learned to work with some complex systems, work with team and people, collaborate and communicate, align with members and remote people who have informations I don’t. One thing job did not give me is better code writing and problem solving skills. Job didn’t teach me how to write cleaner code. The core of improvement in the end is me.

Algorithms and data structures are important

Because problem solving skills are something that I own and only I myself can improve, I start to see why companies like Google require candidates to know these. Because they can teach candidates to work with codebase, systems, collaborate, but they can not teach them to code. Google should not teach the members to code, because it’s one thing a developer should bring. However there are invaluable lessons that Google proves, at least I believe so myself.

--

--

--

i like to read

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

9 Points you must know about Flutter SDK

How Relevant Is Django?

Future of Computer Science and Engineering

Future of Computer Science and Engineering

HL7 v2 to FHIR Interface Mapping

Working with collision layers in Unity

Jira Foundational Knowledge

Software is eating skills training

New video uploaded on Youtube: How to block Russian users from your AWS web application.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Srecko Kostic

Srecko Kostic

i like to read

More from Medium

Junior Software Engineer

From a Political Scientist to a Software Developer.

What I want to learn as a junior engineer in 2022

Becoming a Full Stack Engineer!