DEV Community

Cover image for Things I Wish I Was Told Before Becoming A Software Engineer
Maddy
Maddy

Posted on • Edited on • Originally published at techwithmaddy.com

Things I Wish I Was Told Before Becoming A Software Engineer

1. Years of Experience Are Not Equal to Organic Experience

Software engineering is different from other fields.

Someone may claim to have five years of experience on their CV, but only 3 out of 5 were organic experience. By "organic", I mean time when you're actively involved in the software development lifecycle, you get to experience different problems, and you're constantly challenged.

You get good at software engineering by experiencing things.

2. You're Only Competing Against Yourself

you-vs-you

The software engineering career path involves many "levels": junior, mid, senior, etc.

Each level requires different skill sets and a certain level of experience.

These definitions vary a lot from company to company.

Someone can be a mid-level engineer in one company but a senior in another company, and vice versa.

Even though we are brought to believe that you should be X by Y amount of years, this doesn't have to apply to everybody.

There's no set standard to "how long should someone stay at X position" or "where should someone be within X years".

Why?

Because:

  1. Everyone learns at different speeds. It can take months, if not years until some concepts finally click and stick.

  2. Not everyone is interested in climbing the software engineering career ladder as quickly as possible.

  3. Overall, a career is not a straight line for everybody. It may be for some people. Other people must face multiple roadblocks before reaching a certain level of stability.

In the end, only you know how much progress you're making.

Comparing yourself to others is unfair because everyone has different backgrounds, work experiences, etc.

You can only compete against the older version of yourself.

3. Don't Bring Your Whole Self to Work

Software engineering is a relatively high-status job.

Many people know that it's a high-paying role which offers many perks and flexibility on top of the high salary.

The market for software engineers is candidate-driven. Candidates receive a vast number of opportunities. There are more opportunities than there are for software engineers. This leads many software engineers to identify themselves with the job we do.

I believe this is a mistake.

In the end, software engineering is a profession. And your profession is not your identity.

It's a means to fulfil a higher purpose. This could be to provide for your family or fund your hobbies or side-project.

4. Software Engineering Is a Marathon, Not a Sprint

marathon

Even though we work in Sprints, I consider software engineering a marathon, not a Sprint.

You cannot learn it all within six months.

I see software engineering as a long-term game.

"It takes ten years to become an expert" - cit.

5. Software Engineering Is a Multi-Disciplinary Field

Being a software engineer goes beyond coding.

It also involves:

  • Project management.
  • Incident management.
  • Technical Writing.

Coding is just one part of the entire software development lifecycle.

Conclusion

These are only a few things I wish someone had told me before getting into software engineering. The list can continue.

What is something you wish someone had told you? Let me know in the comments.

Until next time!

🙋🏾‍♀️

P.S: if you enjoyed this article, you might benefit from subscribing to my newsletter where I share curious tips around tech, software engineering and career development. I hope to see you there!

Top comments (13)

Collapse
 
ajinspiro profile image
Arun Kumar

this doesnt directly apply to software engineering, but i wish someone told me marks (grades) are meaningless in school. im from india and here parents, teachers in schools and relatives always make a huge deal out of scoring marks. i never got good marks at tests and exams and i always see fellow boys and girls who gets high marks in my class getting high respect from all elders and teachers. this always made me feel im lesser than them. after completing my bachelors in CS i was convinced i will never become a programmer because i got a 6.4 instead of a 9.x. i didnt even try for getting an internship. if it wasnt for my uncle who forced me to chase a job in IT, i wouldnt be here at all. and those peers who were scoring high grades in school and college either didnt try to start a career in IT or have significantly less experience and knowledge than me because they pursued a 4 year degree instead of the 3 year old one i took.

Collapse
 
maddy profile image
Maddy

I think grades matter only when you're looking for your first role ever. Once you have 1+ year of experience, no one cares about grades anymore.

Anyway, I see what you mean. I have Nigerian parents, and grades, school and university are a huge deal in Nigerian culture.

I'm grateful for that though, because in the end I know my parents want the best for me. However, sometimes I struggle making them understand that there's more to life than grades.

Some people don't excel at school, but they may excel in other areas of life. And it's okay too!

Collapse
 
adeolaogunkola profile image
Ogunkola Adeola

Kudos. Great Article!

Collapse
 
ogechukwubenj1 profile image
Orie Ben

Well spoken, it's inspires me.

Collapse
 
subhasishnath45 profile image
Subhasish Nath

An eye-opening article. Thanks.

Collapse
 
andreasjakof profile image
Andreas Jakof

Coding is just one part of the entire software development lifecycle.

Sad, but so very true!

Collapse
 
andrewbaisden profile image
Andrew Baisden

You made some great points that resonate with me.

Collapse
 
andreasjakof profile image
Andreas Jakof

In the end, software engineering is a profession. And your profession is not your identity.

Second that.... You are you and you just happen to work within your profession.

Collapse
 
koethan profile image
Koethan

Great article, I'll keep these in mind!

Collapse
 
andreasjakof profile image
Andreas Jakof

By "organic", I mean time when you're actively involved in the software development lifecycle

What then is "non-organic"? I am a developer and I cannot imagine calling me that, when I was "just" sitting in an office doing some IT project management.

Collapse
 
maddy profile image
Maddy

There are some developers that claim to have 20 year experience, but in reality they've been doing the same things over and over again for 20 years. aia hope this makes sense.

Collapse
 
andreasjakof profile image
Andreas Jakof

Ahhh…. That clears it up quite nicely. Thank you!

So how „broad“ would you set this repetition. Is doing Web-Dev for 20 years such a case or if you create the bazillionth Page the same way.

The matter is obvious, but the first also sticks to the same paradigm, yet the field is VERY broad.

Collapse
 
tinkermakar profile image
Makar

"You can only compete against the older version of yourself."

Genius!