0. Check your readiness.
A bachelor’s in software developmentFamiliarity with C++, Java, and PythonOver five years’ professional experience
It might make more sense to wait until you have gained the necessary skills and experience.
1. Update your materials.
Make sure your application materials are in order. Double-check your resume for typos or outdated information. Update professional profiles on sites like LinkedIn, GitHub, and HubSpot.
2. Research the application process and set your expectations.
Adjust your resume to fit each position better by using keywords from the listing or emphasizing specific credentials. Competition is fierce, so only apply to jobs where you match at least 85% of the listed qualifications.
4. Take assessments.
Work style assessment
Work sample simulation
5. Wait for a screener call.
The screener call assesses your career trajectory over the past five years and how your competencies align with the position. You can prepare for the screener call by preparing concise, substantive answers to the following questions:
What have been your greatest career achievements?What have been your biggest career failures?Why did you stay on with/leave each position?
6. Prepare for additional interviews.
Generally, the first interview is with the hiring manager — your potential future supervisor. Next is a day packed with four to five 60-minute “loop” interviews with software engineering team members, some on teams related to your desired position, others from completely different teams. Each interviewer asks about leadership competencies and technical skills, which are covered below.
Leadership competencies
Prepare your list of relevant career experiences to date ahead of time. Follow this link for some helpful examples that showcase leadership competencies.
Technical skills
Next in the interview process comes technical questions, which fall into two categories:
System design competency: Measures your ability to black-box design a software systemCoding competency: Measures your abilities at programming coding languages including C++, Java, and Python
The coding competency category is divided into three subcategories:
Logical and maintainableData structures and algorithmsProblem-solving
During this part of the interview, you will be expected to answer technical questions, using personal career examples to illustrate, and demonstrate your ability to improvise to solve problems.
7. Skill up and try again.
Considering the overwhelming number of applications each posting attracts, getting an interview or job is largely down to luck. Treat the experience as a learning opportunity. Take notes on your interview performance and brainstorm ways to improve. Consider pursuing more training through a coding bootcamp or by earning your software engineering master’s.
In conclusion
You’ll need confidence in your successes and the ability to explain how you will recreate them.