To launch your career as a software engineer, you’ll need to approach your education with your job goals at the forefront. So where should you put focus in order to equip yourself to land your first software engineer role and excel in that role? Holberton School’s Student Success Manager, Michelle Lai, shares her tips for choosing the most marketable skills, spotting the right companies to apply for, and ensuring you deliver in your first developer job.
In addition to learning to code, what sort of soft skills should students master in order to launch a software engineering career?
To succeed as software engineers, it is critical that students learn to communicate their technical ideas, teach and learn from others, and operate from a place of integrity. Today’s companies often pivot business directions or change their plan for execution. Employees who have a high degree of empathy, a strong ability to communicate, and are intrinsically motivated towards self-improvement are able to easily support companies in these transitions. As a result, employees with advanced soft skills will multiply productivity, generate goodwill and be resilient in the face of challenge. A successful company is not the sum of successful individuals but successful teams, therefore, having the skills to be a great a team player, or even, a leader is just essential.
How to Develop these Skills:
What are employers looking for in software engineers who are new to the field?
Employers are widely varied in what they are looking for. The specific languages and technologies change over time. This is why learning more general concepts is important for a software engineer. It is critical to learn the fundamentals of software engineering and computer science which are constant and unchanging. Learning to learn gives an engineer the confidence and flexibility to pick up new languages as they become popular. Finally, soft skills are relevant no matter the company or position.
Engineers who have strong fundamentals, and learn quickly and collaboratively, are a safe bet for employers.
What sort of jobs and roles should people apply for when they are looking for their first software engineering job?
The hardest job search is the first job search. Software Engineers just starting out need to be open-minded in considering opportunities and take an exploratory mindset in approaching the application process. The more open-minded an engineer can be around location, team size, company stage, role, and compensation, the more possibilities for an engineer to find a match.
Are there red flags (or green flags) students should look for in job interviews?
During the interview process, candidates tend to be nervous and focus only on their own performance, without fully understanding the company’s culture. Immediate red flags to watch out for at a company include disorganization during the onsite interview, or rudeness in written/verbal communications leading up to the onsite.
A good way to get a sense of the culture is to follow up after the onsite to meet team members in a more informal setting:
Where do you suggest students start their job search?
There are two stages to the job search.
Holberton approach: At Holberton, we create a number of networking events to give students access to industry leaders, our mentor network, and alumni. Additionally, there are tailored job search-related workshops and projects as students progress in the Holberton experience. Beyond applying directly, Holberton has developed, and continues to develop, hiring partnerships with companies who believe in our mission and are impressed with our world-class curriculum. We’ve connected our students with companies eager to hire engineers for internships, apprenticeships and full time opportunities at companies like Pinterest, LinkedIn, Tesla, NASA, and more.
How can students with non-technical backgrounds (a poet, painter, etc), incorporate that into their job application?
For many non-technical roles, there are many transferable skills that make sense to highlight:
There is no limit to the range of backgrounds and experiences that may translate well into being a successful software engineer. Mason Fish, a former guitar teacher, joined Holberton and is now a Fullstack Software Engineer at Docker. As a mother of 2 and artist, Anne Cognet dedicated herself to learning the art of coding and now applies her creativity daily as a software engineer at Tesla.
Short stints in irrelevant fields may make sense to remove from an application. For example, if someone were a poet for 2 months, it may signal a lack of dedication and would be better unmentioned. If there are a bounty of roles that span several pages, it would be advised to highlight and condense the most impressive and recognizable experience onto a single page.
There are now a lot of new graduates in the job pool. How can new software engineers set themselves apart from other candidates?
It is common for new engineers to look to those around them for mentorship and openly voice their desire to learn from more experienced teammates. From an employer’s point of view, it is far more impressive and unusual to see an inexperienced engineer demonstrate a sense of self-sufficiency and problem solve independently.
Holberton’s approach: We follow a framework for ensuring that every student practices a process of escalation beginning first with carefully reading the available materials, researching independently to understand the problem before slowly branching out to include others in their quest to address an issue or learn a concept. Our graduates reliably find answers for themselves and take care in respecting the time of others by presenting their challenges having already demonstrated initiative and focused effort.
Delivering on the job requires that an engineer is fully dedicated to familiarizing themselves with the code base, and integrating themselves into the team’s coding processes as soon as possible. It’s usually a great sign if a new engineer is able to ship their first code to production within the first week or two.
I’ve landed my first job as a developer – how do I get a promotion?
A lot of knowledge is only available in people’s minds, so be sure to make time to chat with and learn from your co-workers over coffee or lunch
Increasing your seniority is about the technical level but also about soft-skills:
What should a new grad expect in their first month on the job?
It all depends on the individual company. Some examples:
But there is no right answer. Some companies’ products are so sensitive that the ramp up might take a while. For instance building a website displaying a powerpoint might not require the same level of precaution as building software to facilitate an airplane landing.
Once a graduate is in their job, how do they stay relevant and up-to-date in the latest technology?
Mentorship should certainly be sought, and not only when you’re in a junior level job. There is always someone better than you, or someone who knows things that you don’t know. Staying curious and being able to learn from others is a key to any great software engineers.
My piece of advice to any software engineer, and actually any professional, is to develop the ability to retrain and retool. All the knowledge needed to do so is available for free at the click of a button. But it takes skills to be able to know how to phrase the right search engine quest, to find the right medium, to be able to see what information might be right, wrong or incomplete.
Joe Eddy from data science bootcamp Metis breaks down how (and when) to learn Pandas.
Flatiron School instructor Graham Troyer-Joy explains object-oriented programming for beginners!