Many misconceptions surround the role of a software engineer, mainly brought by how they are portrayed in mainstream media. A few common misconceptions about software engineers include the following:
- They always work alone.
- They only need coding skills to thrive in their roles.
- They must be math experts.
- Software engineering is a field for men.
While these beliefs are rampant, those who work in software engineering quickly disprove such assumptions. To better understand what a software engineering career looks like, we sat down with Chris Erlendson, a software engineer and lead instructor at renowned tech bootcamp Flatiron School. After all, who better to explain what a career in software engineering entails than someone who works in the field himself?
A Day in the Life of a Software Engineer
It’s a commonly held belief that software engineering is a cubicle-confining and isolating career. Even Erlendson had the same assumption about the role growing up. “I thought [software engineering] was a drab, dreary job where you work all day in a gray cubicle, dressed in suit and tie, just like in The Office,” he admits.
His opinion immediately changed when he started his career in the industry. Far from the gloomy picture he had in mind, Erlendson found himself working in “a bright and colorful space in a fast-paced company, where you worked at an open table, dressed in comfortable, casual clothes, and solved interesting problems with interesting people.”
Below, Erlendson shares what it really takes to become a software engineer and what a typical day on the job looks like.
Standup Meetings
In the morning, standup meetings occur to check in with everyone. People share what’s on their plate, what happened recently, and what they will work on during the day. “You’re also celebrating your wins and sharing your challenges in case there’s someone else who can help you out. There is always someone across the room who can tackle an issue with you,” says Erlendson.
Engineers also spend some of their time taking care of any pending emails and then continue tackling the task they were working on.
Routine Challenges
Software engineering, according to Erlendson, entails spending a lot of time on routine challenges. It could be an authentication issue, a pipeline error, or an infrastructure issue. At this point, the software engineer thinks about questions such as:
- What sandbox do we need to do to replicate the error or the issue?
- How do I build a simple version of what I’m doing?
- How do I create a more complex version of what I need to satisfy the requirements?
Problem-Solving
Of the things that Erlendson enjoys about software engineering, solving problems would be at the top of the list. His love for puzzles started at a young age as he spent his teenage years helping his parents figure out what tech to use to improve their lives and run their business, a pain management clinic. As Erlendson recounts, when his parents tried implementing certain types of tech tools in the clinic, it sometimes made their operations more complicated instead of easier.
With Erlendson’s help, his parents found the right tech solutions to increase their clinic’s efficiency. For example, he helped his parents go paperless, reducing the number of physical charts in the clinic. In some cases, the tech allowed his mom to handle billing from the comforts of their home, skipping the need to work from the office. “For me, one of the most fulfilling parts of tech is when it is used to make people’s lives easier,” he shares.
As a software engineer, Erlendson says he likes taking a complex problem, looking at it from various angles, and trying different ways to solve it. He also enjoys solving problems in real time while users are visiting the site, even while he’s fixing a site issue.
Flatiron School’s Software Engineering course equips students with in-demand skills that open up opportunities to work in numerous roles in the world of software.
Learn more here.3 Skills You Need to Become a Successful Software Engineer
For Erlendson, one must possess three skills to become a successful software engineer: high proficiency in debugging, emotional management, and communication skills.
1. Debugging
“That’s going to be the essence of being a software developer. It’s going to be the heart of being an engineer. Basically, you have to be a scientist. Every time your code breaks, what do you see?” According to Erlendson, debugging is 90 percent of being a software engineer.
2. Emotional Management
A software engineer should be able to ask objective questions about a problem they’re working on. “You can’t go down the path of ‘I’m a failure, I’ll never do this, I’ll never do that, or why is someone else much better at this?’ You have to look at it objectively and without any narratives or heightened negative emotion,” he says.
3. Communication
While many people imagine software engineering as a solitary job, the truth is that you’re required to communicate frequently with your team. “In my experience, being a software engineer involves working at long open tables with peers,” Erlendson says.
Erlendson shares that if an engineer learns how to communicate well, doors will open for them. For students in a bootcamp, communication can mean working effectively with a lab partner or being actively engaged in the student community.
He further shares, “I would say the biggest indicator of student success in a bootcamp is community engagement. This was very surprising to me at first. I thought it would be critical thinking or the ability to read code and understand it. The sense of community in a cohort determines the success of the cohort overall,” he ends.
Career Paths in Software Engineering
There are many successful career paths in software engineering besides being a software engineer and working on code to fix a website. Other well-known roles that involve aspects of software engineering are:
- DevOps Engineer
- Security Engineer
- Video Game Designer
- Flight Software Engineer
- Research and Development Officer
These are just a few positions that a trained software engineer is qualified for. As seen above, there is more to software engineering than what typical stereotypes depict.
Launch Your Software Engineering Career with Flatiron School
Software engineering is an exciting field with countless possibilities and the potential for long-term career success. Training in this field can open up many exciting opportunities that are not limited to just programming or coding.
Although there are numerous myths about software engineering and development, the truth is that it is a fascinating and diverse industry with lots of room for professional and personal development.
If you are interested in starting your tech career in software engineering, learn about Flatiron School’s Software Engineering course here.
About us: Career Karma is a platform designed to help job seekers find, research, and connect with job training programs to advance their careers. Learn about the CK publication.