Image designed by Freepik
2014 was the year of self improvement for me. It was an iterative approach on improving myself, pivoting to become a Front End Engineer. I have succeeded in that goal. I went through bootcamps, created projects, interviewed at many different companies. This post will be about lessons learned and tips for those people looking to go into the job market for Front End Development.
What do you do after you finish bootcamp?
0. Are You Happy?
Have you ever ask yourself this question? Now that you have a taste of software engineering, it is time to do a self-reflection: will you be happy doing this full-time? Do you like the challenge of learning new things rapidly and solving puzzles everyday?
While the allure of high paying job in Software Engineering might be strong, I do believe this is a type job that will frustrate you to no end if you didn’t find joy in the work. So ask yourself, ‘are you happy?’ and answer it honestly! It’s for your own good.
1. Code Everyday!
I mean it, code everyday! Keep working on your projects: add new features, refactor codes, add unit tests and end-to-end tests.
If you are bored with your projects, then you can try Project Euler or Code Eval. Personally I like Code Eval better than Project Euler since Code Eval’s challenges are similar to programming interview challenges. The Easy level challenges should only take you about 10-15 minutes each to solve. After you have solved 10 of the easy level, try solving the medium level. I found that doing these problems increased my confidence level with language syntax and prepared me for the technical interviews.
2. Create a Website
You should create a website as soon as possible. It might become a distraction in the beginning, but I think it is worthwhile. One thing to note about your personal website is SEO (Search Engine Optimization). Remember that your ‘homepage’ is not your website; it is whichever result show up when you Google search your name.
To make sure your website gets the upper rank, you need to start blogging. Blog about the things you learned during bootcamp, problems you encounter, and how you overcome them.
3. Compile a List of Companies
This is a productivity suggestion. An important part of the job search process that is often neglected is tracking. Create a spreadsheet to track your job applications. Now think about which companies you want to apply. List them from on top of your head first. Then you should go search through Angel List and Hacker News for jobs in startups. Just compile the list for now, do not apply yet. It will only slow you down at this point.
4. Craft Your Resume
Probably the most hated process in this entire job hunt adventure. You should have figured out some of the common things companies are looking for in a candidate while you were compiling the list of companies. Try to match those requirements to your resume.
From my experience and talking to many people, there seems to be 2 approaches to crafting your resume:
- Tailoring resume to the specific job listing
- Optimizing your resume to fit as many companies as possible
The first approach will make you apply to only a handful of companies, but maximizing your chances with each applications. The second approach have volume in mind.
This was my general approach:
From speaking to a lot of people, I found that they don’t treat their resume as an iterative project. That should be your first priority. Over the span of 2014, my resume changed 16 times. It is very rare you get your resume right the first time around. So my initial approach was to go for volume – however, these are the companies that are lower in my wish list. Based on the responses (or no response for that matter), I changed my resume to make the best general resume I can create.
After several initial iterations, then I start to tap into my wish list. For the top of my wish lists, I tailor-make the resume, while keeping the backbone of the general resume. It is mainly changing the wording arounds to maximize the match to their job description.
Here’s a bonus for you – this single change doubled my rate of responses from companies: list your projects on the top of your resume. If your previous experience has nothing to do with Software Engineering, it has no relevance in the resume. I used to work in IT (still in technology), but it doesn’t matter. Put previous experience at the bottom, or after your projects. List 2 or 3 of your projects, with a short blurb of what it is and list the technologies you used. Include links to Github and the live demo if you have it. This will turn your resume from just empty claims to evidence based.
5. Curate Your Online Presence
I have heard of horror stories of people not getting a job offer because their employers found compromising pictures or posts on their social media. Remember, your website is whatever comes up on the first page of google, it is not necessarily your actual website. Go through your Facebook, Twitter, Quora, LinkedIn, and other common social media and make sure there is no compromising content there.
On the other side of this, you should also posts content relevant to the industry. While this is probably not very high on the important-things-to-do-while-job-searching, it can certainly help (just don’t spend too much time on it…there are better things that will improve your candidacy). I would say that your website will still be the most important online presence. 95% of the companies I applied to have commented or mentioned my website (it’s that important).
PS: If you have a visitor tracker on your website, you can usually see which companies checked you out. While you can’t do anything with that information, it’s fun to see!
6. Apply in Batches
The biggest mistake I did in the beginning of my job search was waiting around. You get one initial interview with a company, and you halted your entire applications, hoping that this one will work out. My advice is to keep applying until you receive a job offer. You can’t afford too much lag time. If you wait until you get rejected by that one company, you might have wasted one or two months time.
The number of companies that worked for me was 20 a week. Mind you, I was working full-time during this process; if you are not, then you can probably increase this number. Play around with it, and find a number that works for you. This 20 allows me to respond and schedule interviews without interrupting other interviews or my job. Interviews take a lot of time, some companies go through 5 to 10 phone screens before inviting you for an on-site interview. That could add up to 10 hours you have to commit to, not counting the 30 minutes it takes to calm yourself down before the phone interviews and the 15 minutes post-interview when you hyperventilate.
7. Prepare Answers to Common Questions
Come to the interviews as prepared as you can! Script out answers to some common question so you free up your brain power for the technical questions. After you script out your answer, make bullet points note of things you want to communicate, and use that during interview (don’t read from the script…people can tell).
Some common questions:
- Describe yourself (they rarely read your resume top to bottom… I heard that the average is 7 seconds)
- Why are you switching job from _____ to Software Engineering?
- Why now?
- Where do you see yourself in 5 years? 10 years?
- How do you measure success?
- How do you learn? (important keyword: pair programming)
8. Obtain Feedback and Apply It
After each interview, ask for feedback. If you know you bombed the interview, ask for resources to better prepare yourself. This is very important process. With each feedback you tap in to their point of view, and with that information, you can craft better answer next time or have new resources to improve yourself before the next interview. Don’t be afraid or shy to ask this question, it’s for your own good! With each responses you can either change your scripted answers or modify your resume. Remember to treat yourself as a product. Keep making improvement to yourself, and you will get there!
There you go! Some tips to consider as you finish your bootcamp. Now go ye and apply! Get that dream job. Be confident in yourself, because if you keep improving yourself, you will get there, no doubt about it!
What do you think? Any other suggestion? Comment below!