DEV Community

André Matias
André Matias

Posted on

What I need to do to be a Software Engineer?

So I read that tweet and start to think about carrer again.
Is a CS degree an essential skill to be a software engineer?
What does a software engineer do comparated to a guy that write code like a fullstack developer?
I know it's just titles but we need to have a goal, and my goal is to be a Software Engineer, and I don't have a CS degree and don't want to do it so early.

  • What do you think about a CS degree?
  • Do you have one?
  • Are you a software engineer without a degree?

Top comments (4)

michelemauro profile image
michelemauro • Edited

Titles are just words, except when they are legally regulated, and you are using them in official communications. If in your work environment/in the job marketing you are targetting, "engineer" is a regulated term (i.e. in Italy it is: you have to have a specific degree, not just a C.S. one, and pass a standard exam) you should use it carefully to correctly set the expectations of who you're talking to. So, when in Italy I call myself "Software Engineer", I use the Italian term ("Ingegnere Informatico") because I legally can, and everyone I'm talking to knows exactly what it means and the kind of degree I have. Of course, that doesn't tell much of my work experience.

Apart from that, a C.S. degree is a good thing (I teach in one 😁) but it's not an absolute necessity. I have several coworkers who don't have a degree and are extremely capable developers and great team members.

If that is your goal, depending on how the profession is regulated in Brazil, a degree may be a worthy pursuit: experience alone may not be enough, if haven't the luck of working in a place that makes you learn a well-rounded set of skills.

andrematias profile image
André Matias • Edited

Here in Brazil, We don't have legal regulations unfortunately.
And in some places and situations, calling yourself an engineer without a degree is a selfish act for some people.
I really don't care for them. I've had always experience as a good weapon to fight.
Thank you to reply

colathro profile image
Colton Lathrop

So, I am actually a Software Engineer without a degree, and I think I could answer your questions 😀.

  • What do you think about a CS degree?

I personally think it would be really fun and interesting to actually go through the process of completing graded assignments and taking exams; but I believe that the rate of progression (for me) didn't seem worth it. It was always a mental calculation of how much time I'd spend attending lectures and how much tuition cost here in the states compared the actual knowledge I'd gain.

  • Do you have one?

I would always conclude I could easily spend 1/4 the time learning a specific topic via free resources myself, rather than painstakingly abiding to arbitrary academic rules. I have pretty strong opinions about the education system here in the US.

I've personally been programming since middle school, with some competitive programming in high school; but not actually directly entering the software development industry until ~2 years ago (I'm 24).

  • Are you a software engenear with out a degree?

Yes, but how I got here might be more important to everyone.

I started from the bottom of the totem pole (18 years old), doing overnight tech support; but very quickly moved up ranks and became a lead/senior role. My background in programming really helped with this progression, along with good communication skills. After about a year in the lead role (19 or 20 years old), I reviewed the direction the company was going and didn't quite see a bright future.

I left the company in the beginning of summer, and decide to dedicate all my time to programming. I started looking at open source projects, investing time learning cloud platforms, devops, frontend frameworks, and branching out from my comfortable languages to something better suited for enterprise (python and c/cpp -> c#).

Around 4 months later, I was offered a position working for a Microsoft vendor as a Support Engineer for a major cloud AND on-premise based product. All the knowledge I had gained not working in the previous 4 months was extremely beneficial and lead to me getting a Full-time Microsoft Support Engineer offer in just 7 months after that.

During this time, I got to work with some of the largest companies in the world. I had the privilege of being apart of massive engineering bridges, leading multi-day troubleshooting bridge sessions in highly custom customer environments, and getting first hand experience at fully understanding a system from the outside in.

Eventually, after pretty good success 8 more months later, there came a fork in the road with two opportunities: Software Engineer or Senior Escalation Engineer (Support Engineer Lead Role). Both of these roles had offers available, so it left me with a big decision.

I chose the Software Engineer role, which took me to a different product and an area that focused on accounting business logic in an already established and quite old codebase. At this point, I was so happy, my code and bug fixes we're landing on customers using a Microsoft product.

About 9 months went by, things we're going great; but I felt I didn't have a very good mental model in my head of meshing the real world application of accounting into the data model and vice-versa. I spent days reading accounting books, and studying our data model; but nothing really let it click. I never felt fulfilled from the app domain, and always had that lack of fulfillment nagging that someone else who's more passionate could fill my shoes and the team would be better off.

At this point, another opportunity came up to move to a different team. This other team was much more suited to my passions, which included almost all of the modern bleeding edge buzz words 😀. The team was relatively new, and came with tons of pending work to implement new features. I eventually interviewed, and that's how I'm at where I am now.

I'd say, looking back, my greatest asset was my relationships with my managers and my co-workers. I never hid any investigation into other opportunities from them; I always kept them in the loop on how I felt and if I've interviewed for anything else. I also shouldn't hide I'm very passionate about learning, and spend most of my time doing something development related - hackathons, competitive coding, or developing apps for non-profits.

Hopefully, this provides insight into anyone looking to get into software. I'd be happy to answer any other questions.

andrematias profile image
André Matias • Edited

Wow, It was really great to know your opinion and know a little bit your journey. It inspire me a lot. Thank you very much.