I’ve gotten a lot of emails and comments from people who’ve asked me how I transitioned from an Army Infantryman to a software engineer.
Well, I never really “transitioned” in the traditional sense. I’ve been programming since I was 8 years old when my dad brought home a TRS-80 computer from Radio Shack in 1982.
But a lot has changed since 1982. Heck, a lot has changed since I graduated college in 2005. So how does one go about becoming a software engineer in 2022?
What is a Software Engineer and what do they do?
A software engineer designs applications and systems for computers.
But really… a software engineer uses computers to solve problems and add value to a business.
Think about this: Do you buy a drill because you want a drill, or do you buy a drill because you need a hole?
The fact is that if you are a programmer, the company didn’t hire you because they need programmers. They hired you because they need solutions to make their business run more efficiently.
As a software engineer, you are a drill, and the company needs holes.
You’ll very rarely ever write software for software’s sake. Most software ends in solving real-world problems.
So really, a software engineer helps solve real world problems using computers.
The 2 ways to become a software engineer
1) Self-Taught
Software engineering is one of those career choices where you don’t absolutely need to go to college to get an entry-level job in programming.
Think about this: Let’s say you’re a bartender and you’ve tended bar for 15 years, but you want a steadier job with better benefits. So, you go to a bootcamp to learn programming.
Think about how valuable you would be at a company that makes point-of-sale systems for the bar and restaurant industry. Companies would kill for people like you with real world experience that can translate software to business value.
The trick here is choosing the right bootcamp. Look at the jobs in your desired industries and see what skills are needed. Then pick a bootcamp that teaches those particular skills.
You can also try online learning, and this may be a good option for people who want to continue to work while they study. Now if you go down that path, you want an organization that can teach as well as provide certifications.
I have a bachelors in computer science, a masters in engineering management and an MSc in cybersecurity. When I’ve applied for jobs in the cybersecurity space nobody gives a darn about the MSc in Cybersecurity. They only care about the CISSP certification. So when you’re picking an online learning platform, pick one that can help you get a certification, because a lot of times, that is the bump that gets you past the Artificial Intelligence filters.
Cloud Academy actually has a lot of certifications, including ones for Amazon Web Services, which is only going to grow in importance.
And best of all, with online learning, you aren’t tied to a debt burden like the next thing we’re going to talk about…
2) Getting a College Degree
When picking a college, names really don’t matter unless you got into a big-name school. Don’t fall into the trap of wondering whether Rutgers has a better computer science program than Florida State. Below the Ivy League, it really doesn’t matter. Pick a school and graduate from it. That’s the most important thing.
College is going to teach you programming, but college is usually a few years behind the bleeding edge of technology. Keep that in mind because you might not have all of the skills you need to program for a company when you graduate.
Also remember that a good portion of college will be teaching you the theory behind programming. This is useful, but one of the things you lose is time.
In college, you are doing the work that the professor wants you to do. I can’t tell you how many resumes I get from college graduates who can convert Fahrenheit to celsius in 4 different languages, but they can’t insert something into a database using a form.
The biggest advice I can give you is that you have to do extra work.
Do a couple of major projects yourself and note them on your resume. As a hiring manager, I really want to see what you can do. It’s important to identify your own strengths and weaknesses and it’s very important to get an internship.
This helps you narrow down the kind of jobs, industries and languages that you like.
The last thing you want to do is end up in a job or industry you don’t enjoy, so try to do as many internships as you can because you don’t know what you like unless you’ve done it a few times.
Internships also help me as the hiring manager figure out whether you’ve been able to get along with your team. Nobody wants to work with people they don’t like no matter how smart they are. And internships help prove to me that you were able to get along with your co-workers.
Improving your odds
It’s actually not impossible to get your dream job out of college or boot camp.
But the odds of you landing your dream job significantly improve if you come out of the gate with a lot of side projects, a lot of certifications, and several internships.
The more useful things you have on your resume, the greater the chances of you getting picked up by that company you love.
You need to work for it, and then the work doesn’t stop. But with hard work and dedication it will pay off in the form of a rewarding career with a nice paycheck, solid benefits, and the pride of influencing your company’s growth.