Actionable tips for aspiring software engineers, from choosing what to study to acing your first interview.
Are you considering a career in software development? The field of software engineering is very diverse, and there are many different areas of focus you may want to study. Navigating the best course of action as you begin to consider courses to take and areas of software engineering to study can be daunting. One of the lead software engineers at Enola Labs, Marty Burolla, provided some of his best tips (tips one through four) for aspiring software engineers like yourself as you begin this process. We also had our Operations Team Lead, Sean Killian, weigh in for the last tip with advice for that first professional interview of your software engineering career.
Tip #1: Focus on One Particular Area of Study
The software industry is huge and it continues to grow every year. You might have a burning desire to jump right in and learn everything you can, but it is important to recognize that even the simplest of apps can be extremely complicated with many layers of code under the hood. In general, application development can be split into two areas — frontend and backend development. The domain knowledge in these two areas is huge, and it’s rare to find somebody that knows both of these areas extremely well. Figure out what which area interests you the most, and concentrate on mastering that area. This may mean taking a couple of classes in both frontend and backend development to determine which area you can see yourself having a career in.
Tip #2: Always Keep Learning
Whether you are about to start your first software development class, are preparing to enter the job market, or have had a career spanning thirty years, it is so important to always keep learning. As you focus on mastering your specific skill set, you should also dabble in new frameworks, technologies and anything related to your field. The software industry can be extremely volatile, and new projects can come and go very quickly. Don’t be surprised if you have to completely retool your skill set to match the current demands of the job market in your area. Having experience and interests outside of your master skill set can help you stay employed and marketable for new opportunities.
Tip #3: Understand the Code
Don’t be afraid to look at somebody else’s code and try to understand it. If you find yourself on a project with senior talent, this is a great opportunity to take advantage of it! Don’t be afraid to ask your peers about something you don’t understand in their code. Take the time to break things down and fully understand every construct and keyword. In these instances, slow and steady wins the race and will make you a stronger engineer.
Tip #4: Communication is Key
By nature, software people and engineers tend to be a bit more on the introverted side. Not to lump all engineers into one group, but many of us can forget what it’s like to interact with other people after staring at code all day. Make sure the emails and texts you send are simple, clear and concise. One time I received an email from a developer that was written so poorly, I could not determine if he was asking me a question or making a statement. Simple and timely communication can make working on a project feel smooth, and will ultimately help your career in the long run.
Tip #5: Make Each Job Interview a Learning Opportunity
Whether you are in your first interview for a software developer position, or you have had a long career and are ready for something new, it is important not to treat each job interview as a learning experience. Sean Killian, our Team Operation Lead, believes candidates should not shy away from asking the recruiter or interviewer what hesitations they might have in offering you a role at the company. This will help you either clear the air regarding certain hesitations and misunderstandings the employer has, or it will help you determine where you need to strengthen your skills — which may be engineering or communication focused.
Alexandra Bohigian is a Marketing Coordinator for Enola Labs and contributed this content for Coding Dojo. For more information on Coding Dojo courses, and to apply for an upcoming program, please visit codingdojo.com