Context
I’m a frontend leaning software engineer with around 8 years of experience. I’ve got some larger recognizable company names on my resume, but none in FAANG. I have a portfolio of games I’ve built which I think helps me land interviews/jobs to some degree. It has helped historically for roles in the exact same tech stack and design space.
Now vs. previous years
I started my career in a good economy at peak “code will rule the world” fervor. It was very easy to interview for jobs. Everywhere I looked there was a bootcamp teaching people to learn to code in a summer. Having “real” credentials made interviewing trivial.
Interviewing for entry level and mid level jobs was generally pretty easy any way. I did fail interviews at places like Google, but otherwise never really had an issue in the interview process.
During this time, I was able to be really selective and thoughtful with my interview process. I rarely applied to many places in my job hunts. I had a pretty high application to interview rate.
I got laid off with the tech sector and economy generally regressing post pandemic. Searching for a job then sucked. It took me 4 months and I felt really exhausted and grateful when I finally landed something. At this time, I saw almost no frontend engineer roles.
I was let go from my last job in August. The search this time was much more pleasant. I am pretty regularly receiving inquiries from tech recruiters about open roles. Most of these are early engineer positions at startups which aren’t particularly attractive to me though. Sometimes this will open a conversation up with a recruiter that lets you ask if they have better fitting roles though.
This time around, my slow thoughtful approach didn’t work out. I had to apply to a lot of roles very quickly. As soon as they were posted ideally, but at least in the same day.
Many of the roles I was referred to didn’t pan out. Timing seems way more critical than having a referral. A lot of the referrals I got at the start of my process were for roles already having interviews going so they didn’t pan out.
I do have a bit of a career identity crisis. Most of my experience is as a frontend engineer. I have done a decent bit of supporting backend work. I did a lot more of this at my last role. This made me feel very qualified for frontend only roles, but there are fewer of these. And then I felt less qualified for fullstack roles of which there are a lot.
I also found out, I think, that I’m looking for smaller company roles that are post product market fit. I don’t really enjoy the chaos, whiplash of early stage companies and the expectation of the company being your entire life. I still think there could be an early stage startup I’d like, but it is so highly dependent on the company, team, and leadership. I do think a lot of my distaste comes from having a bad experience at my last role.
I have also found interviewing to be trickier now. It feels like a big vibe check roulette a bit. I went into various stages of around ten interviews and only got an offer for one role. I think this is equal parts me not being prepared for behavioral interview expectations for senior engineers. I also think I lost a lot of roles by going for the senior fullstack roles I was less qualified for.
Applications
Resume
- Single page resume (idk if this matters, but I keep doing this)
- Relevant projects?
- Executive summary if you need to explain (i thought this helped explain why i was lighter on fullstack exp as an fe, but really dunno if anyone cares about this)
- Match keywords from job description in your role descriptions
- Ideally you would customize for each role, practically that doesn’t seem worth it to me any more
- I have two resumes one for Sr. FE Eng and one for Sr. Eng
- These aren’t even that much differentiated tbh
- Ideally, I think you could have a bunch of pre-written lines for each role and select relevant ones for each job app - not worth the time in practice, for me
- Resume generation tool
Applying
Getting any traction seems to be a speed and numbers game
- You need to apply as close to the job posting landing as possible, I think
- Same day seems to be pretty reasonable so far in my experience
Job boards
Hiring Cafe is the best site I’ve used to find roles
- You can filter for
- software roles posted in the last 24 hours
- make sure it includes your minimum salary
- make sure it is remote or in your area
- Easy to get job info and apply directly on company site
Figure out what you’re looking for to vet or dismiss a role as quick as possible, for me:
- company size, too small usually throw it out
- good keywords: full stack, front end, leaning front end, React, UI, UX, TS, JS, willingness for me to learn backend or other skills if needed
- bad keywords: .NET, C#, Java (i have no issue with these languages, but these are always backend heavy roles), AI, ML, Staff, Lead, crypto
I apply to all fresh jobs that are relevant each morning/day.
Referrals
These do seem to have a higher chance of getting you in for at least a recruiter screen.
Search LinkedIn to see if you know someone who can refer you to a role? The couple times I tried cold contacting someone this didn’t pan out. And I always feel weird when people message me. So, I’m more into checking where my former coworkers I liked have ended up.
My network isn’t really very big, so while I did get some referrals this way. I didn’t get too many.
Separately, also helpful to ask people you know if their companies are hiring.
Application tracking, notes
Tracking
- I just used an Obsidian note for this
- link companies
[[CompanyName]] - IDEALLY you should export the job description you applied for into a PDF so you can reference it later (i am lazy and don’t always do this)
- It’s pretty common when you’re mass applying to forget what the company or role is when they contact you, and sometimes the specific thing you applied for is no longer available on their website
- I try to minimum copy some important info
- notes on the role (good fit, bad fit, i’m excited for this one, maybe a stretch) or other Qs you’d want to ask about the role if you hear back
- salary range
- title
- link to description
Many submissions require similar short answer blocks. I find it useful to record these in a notes app so I can reference and re-purpose them in future submissions.
- It’s helpful to sort of build up a repository of info to draw from in these submissions and in interviews
- As you deliver them to people, you can keep tuning and iterating on them
I’ll create a note for a company if it has enough info to clog my main note or if I get an actual interview.
Record each interaction date in the company note to help keep things straight.
- contact
- each meeting scheduled
Interviewing
Different interview types:
- Recruiter screen
- vibe check
- Tech screen
- CodeSignal ICA has been popular
- Sometimes a take home project
- Sometimes a zoom call and a coderpad link, or just a screen share
- Rarely (but maybe more common at bigco) this can just be technical questions, and in the worst case may be a technical trivia buzz word interview
- On site
- this usually includes a spread of technical and non-technical:
- hiring manager interview
- technical part 2
- system design
- values alignment
- this usually includes a spread of technical and non-technical:
- Hiring manager
- primarily seems to be about vibe checks
- selling your self and previous projects is important here
- Values alignment interview
- usually a 3rd party unrelated to the team you’re interviewing doing a behavioral interview
- often about their values specifically, but generally seems to be a vibe check interview like the hiring manager interview
- System design
- this type of interview is variable
- maybe more “actual system design” for full stack roles
- for FE roles this is more about code structure, components, API structure
- Data structures/algorithms/can you code part 2
- It seems like most interview cycles have at least one “meaty” technical interview after the initial technical screen
Before each interview
- from recruiter, ask for any info about the meeting you can get
- i try to spread my interviews out, don’t want to do two tech screens in a day, can do a recruiter screen same day though
- try to front load them in the morning
Common prep
- look up the interviewer, i haven’t seen this really pay off that much, but if you can find info about them it does help you feel like they’re more of a person you know, i also think (wonder) that if the person sees your notification on linkedin that can be good?
- prepare questions
- you have to have questions to show that you’re interested in the role and company
- i think a non trivial part of interviews is about vibes - ideally questions help your interviewer get good vibes about you
- also, you need to get important questions answered to figure out if the role is a good fit or not
Behavioral interviews
- recruiter screen
- hiring manager
- values alignment
Behavioral interviews are generally about how you problem solve, work with others, and you past experiences. I have generally found you can prep for them all in the same way.
Pick past projects from work, preferably recent ones (that said you can be non-specific about recency to pick for a relevant project)
- STAR is the general pattern people reference… it’s fine! i don’t quite get it, but it gets the job done. You should think through each step and explain the project.
- Ideally, you should be able to speak about it to both non-technical and technical interviewers
- Depending on the role applying, you will want to emphasize different traits in your projects
It is useful to prep several projects, i have a few this round, i reference them in short answer questions too which helps flesh them out
- gather content authoring pipeline
- gather github integration
- twilioquest extension system
- leading twilioquest dev (this is less of a spec’d out proejct)
As you keep talking about these projects over your interview cycle you can keep refining your delivery. Figure out what aspects different kinds of people care about or seem to find impressive. If something falls flat in one interview, consider dropping it. Or if people are confused when you explain something one way, try changing it up in a later interview.
Other questions you’ll get asked at least in recruiter screen, but often in others too:
- Why are you leaving your current role?
- What are you looking for in your next role?
- If you have any gaps in your resume or other misalignments, you’ll need to speak to them. Probably best to bring them up proactively if you can in your “what are you looking for section” in your resume
- These should all tell a coherent story, basically - “I’m looking for a good long term fit, I’ve bounced from a few recent roles and am looking for the right long term team.”
- Avoid salary talk.
- i’m focused on finding the right fit and haven’t thought about salary yet
- the range posted on the role seemed acceptable (idk if this is a successful dodge or not)
- i’m not sure how useful this is or isn’t tbh - i think if you’re cool with mid or higher in their range you can try and keep quiet? if you need the top end of their range you might want to anchor higher early so you don’t waste your (and their) time
Tending to your professional network
I need to be better at this. It is easy for this to atrophy. I had a relatively strong network earlier in my career by going to a lot of in person meetups. The connections I formed at my last good job at Twilio are strong too.
If you end up at a couple jobs in a row that went poorly it can really leave you feeling stranded if you’re not keeping your network up outside of that.
I was also very bad at maintaining friendships with colleagues I liked at my earlier roles.
I’m working on a new thing of answering every recruiters’ message about an open role now. Even ones I’m totally uninterested in or annoyed by. My theory is that if I end up in need of a new role I can search through the list of people who have reached out to me via email or LinkedIn and ask if they’re looking to fill any roles.