{"id":926,"date":"2022-04-17T22:05:13","date_gmt":"2022-04-17T21:05:13","guid":{"rendered":"https:\/\/www.thesixsides.com\/blog\/?p=926"},"modified":"2023-04-03T00:56:21","modified_gmt":"2023-04-02T23:56:21","slug":"tech-job-hunting","status":"publish","type":"post","link":"https:\/\/www.thesixsides.com\/blog\/2022\/04\/17\/tech-job-hunting\/","title":{"rendered":"Tech Job Hunting"},"content":{"rendered":"\n<p>In late October of 2021 I completed a five month job search. At the start of this search I had a difficult time just getting the interview. After significant changes in approach, in the last two months the volume of companies I was late-stage interviewing with on a was nearly overwhelming (okay, it was four but it gets to be a lot balancing that many interviews). In this post I would like to outline and share what I discovered in this most recent bout of job hunting. I would like to stress that the audience for this is someone who has not worked in traditional software engineering environments, who is looking for work in startups, that has never worked at a recognizable company (FAANG and the sort) nor went to a top college or university that is a household name. This post will mainly be divided into three main parts, finding leads, what I found worked well on my resume, and then the interview prep process.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"finding-leads\">Finding Leads<\/h2>\n\n\n\n<p>I used HackerNews&nbsp;<a rel=\"noreferrer noopener\" href=\"https:\/\/hn.algolia.com\/?dateRange=all&amp;page=0&amp;prefix=true&amp;query=%22who%20is%20hiring%3F%20%28%22&amp;sort=byDate&amp;type=story\" target=\"_blank\">Who is Hiring threads<\/a>&nbsp;as a primary source of jobs. This is a re-occurring thread at the beginning of every month on HackerNews and racks up hundreds of job listings in a matter of hours. You should to be armed and ready to apply to these, from anecdotal data relayed to me by recruiters of these posts I estimate that some of these postings can rack up dozens if not hundreds of applications in a matter of days. I\u2019ve found that getting in early may be an important factor in landing an interview. Sometimes new jobs are posted on the thread as late as 10-15 days after it opens so check back on it and use one of the linked tools on the post to sort by posting date and domain.<\/p>\n\n\n\n<p>Adjacent to HN is YC&#8217;s <a rel=\"noreferrer noopener\" href=\"https:\/\/www.workatastartup.com\/\" data-type=\"URL\" data-id=\"https:\/\/www.workatastartup.com\/\" target=\"_blank\">Work at a Startup<\/a> I created a profile on there and had been reached out a few times on the site.<\/p>\n\n\n\n<p>Word of mouth also goes a long way in job hunting. See what your college friends are up to. Just found a cool new tool or service? See if they\u2019re hiring. Moving to a new city? Search \u201c{CITY} best startups\u201d.<\/p>\n\n\n\n<p>More on timing. Your mileage may vary but I found the best time to start a search was at the beginning of a quarter. That\u2019s the end of March, June, September, or December. I got my strongest results in the start of Q4 where I believe a lot of companies were raising their hiring quotas.<\/p>\n\n\n\n<p>What doesn\u2019t work: <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Craigslist. This used to be a decent place to find different job postings but has become the bottom of the barrel in recent years. I have been able to find intermittent work in the gigs section sometimes if you\u2019re looking for something immediate and shorter-term. <\/li>\n\n\n\n<li>AngelList. My experience is that you only get responses if you have an exceptional background (FAANG or a university college). In one case I had even encountered a scam wherein the scammers made a profile for a real-life company and then reached out to me for an interview. After some vanilla interview questions they immediately &#8220;hired me&#8221; and asked for my bank information.<\/li>\n<\/ul>\n\n\n\n<p>What I didn\u2019t try: <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>LinkedIn. I don\u2019t have one, I\u2019ve aggressively maintained that I don\u2019t need one. At my prior position two people got better roles via cold LinkedIn-messages, I think they were reached out to because they were both senior engineers not because they simply had software experience in their job history. Your mileage may vary but just adding this here to say don\u2019t worry if you don\u2019t have a LinkedIn or if it\u2019s not pristine.<\/li>\n\n\n\n<li>Blind. I&#8217;ve heard good things about this network but didn&#8217;t try it. Referrals are always a sure-fire way to get one&#8217;s foot in the door.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"resume\">Resume<\/h2>\n\n\n\n<p>A mistake I made early in the process was using the same resume for every listing. Every position has different requirements, the resume is a document to emphasize that you meet those requirements&nbsp;<em>and<\/em>&nbsp;are a good fit for that role. In this manner the resume should be somewhat a living documents and therefore you should curate a different resume for each job. Whether the change is modifying line-items or a single word, save every version that you send. Put it into git if that feels necessary, I just had a Word document that I would Save-As every time I made a change. When you find another job listing that is kinda similar to the one you just edited, update it to match the new listing and that becomes another version of your resume. What you\u2019ll have in the end is a <a rel=\"noreferrer noopener\" href=\"https:\/\/en.wikipedia.org\/wiki\/Tree_(data_structure)\" data-type=\"URL\" data-id=\"https:\/\/en.wikipedia.org\/wiki\/Tree_(data_structure)\" target=\"_blank\">tree<\/a> of resumes with the deepest node hopefully being the best version of your resume.<\/p>\n\n\n\n<p>You might be asking how one would be changing the resume so much. If you have a \u201ctechnologies\/tools\u201d section only list the bare minimum technologies that are relevant to the job. I used to list a wide gamut of these almost none of which were even close to relevant to the positions I was applying to. Adobe Premiere, MiniZinc, Swift, to name a few.  I&#8217;m definitely competent in them but I wasn\u2019t applying to be an iOS developer or video editor and I would be surprised if anyone who read the resume had even heard of MiniZinc. The resume is not meant to show off\u00a0<em>everything<\/em>\u00a0you know but rather\u00a0<em>what you can offer<\/em>\u00a0to the company with respect to the immediate goals of the company. If the job listing calls for experience in React, TypeScript, Redux, and GeoJSON\u00a0<em>only<\/em>\u00a0list those in addition to a few core, adjacent technologies that you also have experience with such as Python\/JavaScript, WebPack, TurfJS, and PostGIS (if there is a need to demonstrate back-end experience).<\/p>\n\n\n\n<p>Closing gaps on the resume. I had a two year gap where I went back to graduate school. I did do work during that time but it wasn\u2019t full time, I didn\u2019t think it was relevant, and assumed that recruiters would automatically fill that gap by connecting it with the time range presented in the education section. This was a bad assumption. Closing that gap on paper was an important demonstration that my work history is constant and the nature of that work (independent contracting) demonstrated seniority in the field that I was working in (mostly front-end and full-stack stuff).<\/p>\n\n\n\n<p>Try to keep it to one page, I\u2019ve read that it\u2019s valid to add two pages after 10 years experience but keep in mind the volume you\u2019re competing with, one page is something a hiring manager can read fast. Your resume should be a single column and maximally skimmable, as in a hiring manager should be able to look at your resume and determine if you\u2019re a fit in 15 seconds, this is also why it\u2019s important to only list the bare relevant tools and technologies. In addition it\u2019s good to trim line items in previous positions to something immediately understandable and brief.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"interview\">Interview<\/h2>\n\n\n\n<p>You will see this advice in many places but read \u201cCracking the Coding Interview.\u201d Every company I\u2019ve come across that\u2019s worthwhile has used these practices. It seems contrived but it\u2019s just the way things are. In the same vein, they can easily be gamed. Memorize your backstory, learn to pitch yourself with it, and the why and what you\u2019re looking for in a new role. Most importantly be prepared to answer the question \u201ctell me about a challenging problem you worked on\u201d and be ready to talk about that for upwards of 60 minutes from a broad overview down to implementation details.<\/p>\n\n\n\n<p>Besides behavior questions such as those above, you are likely to be expected to do practical problems and white-boarding. Practical problems range from <a rel=\"noreferrer noopener\" href=\"https:\/\/leetcode.com\/\" data-type=\"URL\" data-id=\"https:\/\/leetcode.com\/\" target=\"_blank\">leetcode<\/a>\/<a rel=\"noreferrer noopener\" href=\"https:\/\/www.hackerrank.com\/\" data-type=\"URL\" data-id=\"https:\/\/www.hackerrank.com\/\" target=\"_blank\">hackerrank<\/a> problems (reverse a linked list, read a 2D array diagonally) to simpler practical problems where they want to see your coding style and problem solving methods (implement a plain text to markdown parser for two rules of your choice, write a library book management system in Python with a very basic prompt). It is essential to practice these in advance and be comfortable with data structures you don\u2019t have much experience with. Often solving the problem or making an elegant solution is less important from being able to simultaneously verbalize what you\u2019re thinking and doing while writing your solution. Long gaps of silence where you\u2019re just writing code is not good, again practice this locally even if you\u2019re just speaking to an empty room. If you\u2019re uncertain about something say so or ask questions about it, even go as far as to ask if there is a better way to do it. At the very least it demonstrates willing to learn and grow.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"meta\">Meta<\/h2>\n\n\n\n<p>Track your progress. I maintained a spreadsheet that recorded the company name, their careers page, industry type, pay range if provided, comments, and status (when I applied, last time I heard from them, interview stage). At the end of your process you can run some analytics on this and get some insights for next time. For example in this last job search I applied to 19 companies, 7 I never heard back from (ghosted), 7 rejected me at various stages, and I passed on 5 (again at various stages). This sounds bad but considering a prior job search of a longer time period with 8 ghosts, 18 rejections, and no chances to pass, I\u2019m pleased with the outcome.<\/p>\n\n\n\n<p>Know who you\u2019re talking with. Before each interview lookup who they are what they\u2019ve worked on. It sounds a little creepy on its own but they already know a lot about you. Another way to say this might be &#8220;know your audience&#8221; but of course never reveal that you know them either. With this you can anticipate questions or curate your responses to common questions more appropriately. The same can be said for the company as a whole, check GlassDoor reviews and interviews to get as much information as you can about what kind of beast you\u2019re interested in working with and maybe for.<\/p>\n\n\n\n<p>This might go without saying, being honest with yourself and where your strengths are goes a long way. Punching above your weight in a interview process is very difficult and ultimately demoralizing. You may be able to get past the phone screen but the rest of the process sniffs it out immediately wasting everyone\u2019s time in the process. The difficulty in this is staying focused and confident on what you\u2019re qualified for.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"conclusion\">Conclusion<\/h2>\n\n\n\n<p>Job hunting in tech is hard. It\u2019s exhausting and can feel like a second job in and of itself. It feels crazy-making that no other industry does this level of vetting. My brother is a good plumber and he got his most recent job by just walking into an office and simply asking for a position\u2014and plumbing pays way more than you think!<\/p>\n\n\n\n<p>It\u2019s so much worse when you\u2019ve put in a few weeks, or months, of time into the interview process with a company just to get rejected. The hardest part about this is to not have a chip on your shoulder about it. Rarely companies will give feedback, supposedly this is to legally protect themselves but it never hurts to ask for feedback the worst that happens is you get ghosted. If you\u2019re really convicted about the company save them in the spreadsheet and try again in 6 months. Job hunting, like many things, is best taken with a growth mindset it means doing post-mortems on what did and did not work. It means doing some manual form of stochastic gradient descent until, after some period of time, you\u2019ll find yourself at an optima that is like irresistible to companies and you\u2019ll be overwhelmed with interview opportunities.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-css-opacity\"\/>\n\n\n\n<p>If you&#8217;re interested in any of the mentioned resources or in some of the leads I compiled feel free to email me through the form on <a href=\"https:\/\/thesixsides.com\/about.php\" data-type=\"URL\" data-id=\"https:\/\/thesixsides.com\/about.php\" target=\"_blank\" rel=\"noreferrer noopener\">this page<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In late October of 2021 I completed a five month job search. At the start of this search I had a difficult time just getting the interview. After significant changes in approach, in the last two months the volume of companies I was late-stage interviewing with on a was nearly overwhelming (okay, it was four [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-926","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/posts\/926","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/comments?post=926"}],"version-history":[{"count":7,"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/posts\/926\/revisions"}],"predecessor-version":[{"id":939,"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/posts\/926\/revisions\/939"}],"wp:attachment":[{"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/media?parent=926"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/categories?post=926"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.thesixsides.com\/blog\/wp-json\/wp\/v2\/tags?post=926"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}