I recently spoke with a high school student who is interested in getting into software engineering. Her questions were super insightful! Below are my responses back.
1. What do you specialize in the field?
At the time of writing, I have two primary job functions: UI/UX Designer and Software Engineer. As a UI/UX designer I help create delightful digital experiences. That means I design the visual elements of a piece of software or website, as well as fine-tune the experiences a user has with the applications we build.
As a software engineer, I create and maintain web applications. Web apps are similar to mobile apps, except that you can access them from the internet. TikTok, Instagram, and Gmail are all examples of web apps.
There are quite a lot of specialties to choose from. The beauty of getting a college degree is that it gives you the space to explore your options and meet professionals in a variety of fields. If you know you’re interested in software engineering, that can be a great path to start with. Keep in mind that software engineering is quite broad, so you’ll want to explore the various specialties, their job requirements, and salaries. This article by BrowserStack is a good start.
2. What qualities would help someone get into the field?
This is such a great question. I’d list the following as qualities that can help you get into the field of software engineering: people skills, teamwork, empathy, problem-solving, logic, professionalism, and passion.
Almost anyone can learn how to code, but what sets apart great engineers is their ability to connect with others at a distinctly human level. Great software engineers provide excellent customer service, can empathize with the needs of the end user, and are fabulous team players.
Of course, you will eventually need to learn programming languages, and problem-solving skills and a keen eye for logic can really make you shine. Great software engineers think outside of the box and use their people skills to solve complex problems.
All of those great traits are practically lost, though, if you don’t have a passion for the field. Employers are looking for genuine interest, and passion for your craft will keep you motivated over the course of your career.
There are a number of articles on this topic. For example:
- “Software Engineer Skills: Definition and Examples”,
- “The Three Key Traits of Great Software Engineers”, and
- “Software Engineer Skills”.
Make sure to read these articles with a critical eye, as many are written with the goal to sell you on something!
As a final note, I’d really encourage you to keep asking questions and dedicate time to exploring your options. This looks like:
- Talking to people in the field,
- Listening to podcasts (CodeNewbie, COMPRESSED.fm, and SyntaxFM are good starts),
- Checking out YouTube channels by people in the field (Gyasi Linje, nicole.young, LevelUpTuts, James Q Quick),
- Trying some free online courses (Codecademy, freeCodeCamp, The Odin Project), and
- Building some projects on your own.