🎹

Etudes for the Web Browser
Chapter 1, by Jason Tu

How to get a job in a new industry without experience

On the power of designing a take-home test.
Published July 5th, 2022

doggy2shoes

So you're looking for your first job in the software industry.

Or maybe you want to break into the game industry.

Or maybe you've heard about the latest web3, blockchain, AR-VR-metauniverse craze, and you want in on that.

Whatever it is, you think it'd be your dream role. You'd have an impact and do what you love, and you'd get paid handsomely to boot.

But... there's only one problem.

You have no computer science degree. Or you lack software engineering experience. Or you have zero experience in the industry that you're interested in.

So you apply to job after job, only to hear nothing back.

In desperation, you might even try the resume spam strategy, which gets someone to reply! But the reply is always the same impersonal hard pass:

Thank you so much.

After speaking with the team, unfortunately they decided not to move forward at this time. We are looking for people with a few more years of professional ‹insert technology here› development experience.

(Not implying that I've received an email like this before... hmph!)

You just aren't sure how to get your foot in the door, much less successfully pass the interview.

When this goes on for months – or even years – it seems like you'll never land the job of your dreams. You doubt yourself: "Maybe I should give up and do something else".


Firstly, don't give up!

Landing a job in an industry that is new to you isn't insurmountable.

But you need a process. A framework for thinking about job applications, so that:

  1. You can build the skillset that any job application looks for – even without the experience – and
  2. You can prove that you're capable of doing the job, both to your prospective employer, but especially to yourself.

And in the rest of this chapter, I go over the exact process that you should take in order to build your skillset, prove that you can do the job, and land that job of your dreams.

Let’s get started.

1. Find 10 job descriptions that match what you want to do.

doge

The first step of any job search is to identify what you want to do. Specifically:

  1. What industries do you want to work in? The sky is the limit. Don't worry about whether you're qualified; worry about whether you'd be interested in the work.
  2. What specific companies do you want to work at? Use your list of industries to inspire ideas for this list.
  3. What matches what you want to do in the future? In short, what are you passionate about? Choose companies where their mission statement resonates deeply with you.

For example, if you were interested in the robotics industry, you might peruse the monthly Ask HN: Who's hiring thread and Ctrl+F for robotics.

If you were interested in data science, you could scour LinkedIn for companies hiring for data scientists.

Or if you wanted to break into the game industry, you might skim the job posts on WorkWithIndies, and note the game studios that interest you.

If you're having trouble coming up with a list of industries and companies that interest you, try any of the following job boards:

  1. Ask HN: Who's hiring threads
  2. Work at a Startup (from Y Combinator)
  3. Underdog.io
  4. LinkedIn's job search engine
  5. WorkWithIndies
  6. Your own personal network on LinkedIn
  7. Hiring Without Whiteboards. A collection of companies that don't drill you on leetcode-style questions during interviews.
  8. Your imagination. Do a free brainstorm of any industry or company that comes to mind. Curious about, say, medical devices? Do your research, and identify companies in that space.

Try collecting 10 or more companies before moving on.

⏎ Jump straight to the Action Challenge


Got it? Great!

From the 10 companies that you've collected, peruse each of the companies' Careers pages, and identify 10 job descriptions that you'd be interested in pursuing.

Then copy and paste the job descriptions into a service such as Google Drive or Notion. This is because job descriptions can change or be removed at a moment's notice, and we'd like to keep copies for reference.

If you're wondering why we collected all these job descriptions that you may be unqualified for, then that leads us to –

2. Focus on 1 job description to identify your learning curriculum.

⏎ Jump straight to the Action Challenge

When you have zero experience in an industry, the best way to land a job isn't by resume spam to hundreds of open job applications.

Nor is it even by applying to several companies at once.

It's to focus on a single job opportunity – ideally, one that you feel utmost passion about pursuing. Quality over quantity.

To illustrate, let's say that I'm a diehard Discord fan, that I wanted to break into frontend product development, and that my job of choice is Software Engineer on the Communities product at Discord:

discord2

If you study the job description carefully, you can suss out a few main requirements:

  1. Consumer-facing. Wants to build products that are used by end-users (versus business users).
  2. Solid frontend skills. Great at React and TypeScript.
  3. T-shaped knowledge. Can dip their toes into their backend stack (Python and Rust), Android stack (React Native and Kotlin), and iOS stack (React Native, Objective-C, Swift).
  4. Collaborative. Can communicate the big picture of their work with different job functions.
  5. Writes clean code. Should generally be a conscientious engineer.

So why does this matter?

Because it dictates your learning roadmap.

It tells you exactly what you need to learn and prove in order to nab that job. That's your ticket in.

And this single-job strategy takes advantage of the fact that if you master the skillset for just this one job, you become qualified for a whole swath of similar jobs.

But... there's one piece missing.

How do you go about learning the skills that you've identified, and how do you demonstrate that you have the skills once you've learned them? The answer lies in –

3. Design a take-home test.

take home test

⏎ Jump straight to the Action Challenge

Much like the central thesis of an essay, any job application must build a solid argument for your ability to perform the job well.

Thus, when you lack professional experience, the next best thing is designing and completing a take-home test.

Far from being unpaid labor, a self-designed project serves threefold:

  1. Ideation. It gives you a pre-made project idea for your portfolio. Want to work for Discord? Bam – you're building a simple chat application.
  2. Practice. It gets you learning and practicing the skillset in the real-world context of a company's business. No contrived personal projects such as todo list apps or Pokedex viewers.
  3. Portfolio. If it doesn't work out, you now have a rock-solid portfolio piece for the next job application you want to apply to.

But how do you identify the requirements for a self-designed take-home test?

It turns out to be quite easy. Let's take the aforementioned Software Engineer on the Communities product, and study the job summary once more:

communities

The key sentence:

Our current projects include building new channel types, like forums; a home page to catch up on the latest happenings in your community; a new member onboarding experience for customizing your community and making it accessible to anyone; and moderation tools to help admins and moderators run safe communities in a scalable way.

And voila! The job description presents not one, but several project ideas. For example, you could build any of the following:

  1. A minimal Discord clone with the usual chat channels, but also supports forums as a channel type.
  2. A minimal Discord clone with a homepage that summarizes new messages since you last visited.
  3. A minimal Discord clone that supports admin and member roles, and allows admins to build custom onboarding checklists for new members.

The key is that you must interpret the job description in order to spark project ideas. Just one feature is sufficient as well; you want to keep the project's scope small and self-contained so you don't spend forever on it.


Note that companies sometimes offer take-home tests as part of their interview loop. To find whether this is the case for your selected company, peruse Glassdoor for past candidates' interview experiences.

For example, when I applied to work at Segment, it was a common tradition to build Segment's debugger as a take-home test. PlayDots – a mobile games company in NYC – also asks prospective senior Unity engineers to recreate their flagship game in Unity.

By the way, I landed that gig at Segment. I also passed the interview loop at PlayDots without any game industry experience, though I opted for a different opportunity.



In short: choose an idea, then build it.

Polish the little details and take pride in your work. Open source it on GitHub (it demonstrates git skills), and your job application will glow. Seriously – I know this stuff works firsthand.

But if you're still skeptical about the value of this approach, then consider –

4. That's too much effort. Why not just... apply?

email

If you're capable of applying to a job with no industry experience, and getting the job through your charisma alone, then you don't need my advice.

However, even if you magically got the job without the skills to back you up, you'd need to train yourself somehow.

You don't want to be in a situation where an employer fires you after a few months because you can't do your job correctly.

Completing a take-home test is primarily for your benefit. First and foremost, It proves to yourself that you're capable of working in an industry of your choosing.

And here's a dirty little secret of the tech world: everyone is self-taught. Yes, even the people with computer science degrees.

Finally, even if you had a job, you could use this take-home approach to fight complacency. Try learning something completely new – like machine learning – and challenge yourself to complete a project worthy of an actual job application.

This keeps your skills fresh, improves your career prospects, and makes you more valuable to your current employer.

Action Challenge!

action

Note: for the rest of this blog post, you may want to open up a Notes app on your phone or laptop so that you can freely jot down notes.

Armed with this knowledge, the software industry opens up to you. You now know the exact process to break into any industry of your choosing. Robots! Medical devices! AI! Crypto-doggy-whatever-coin!

So why not try it out?

Try running through the process outlined above. To recap:

1. Identify your industry of interest.

What industry (or industries) do you want to work in? Use the big list below to identify a few areas of interest, and write them down:

The big list of industries
  1. Agriculture / Agtech
  2. Artificial Intelligence
  3. Augmented Reality / Virtual Reality
  4. B2B / Enterprise
  5. Biomedical / Biotech
  6. Blockchain
  7. Climate / Sustainability
  8. Consumer
  9. E-Commerce
  10. Developer Tools
  11. Education / Edtech
  12. Energy
  13. Entertainment
  14. Financial / Fintech
  15. Food / Beverage
  16. Gaming
  17. Government
  18. Hardware
  19. Hard Tech
  20. Health / Wellness
  21. Healthcare
  22. Marketplace
  23. Non-Profit
  24. Real Estate / Proptech
  25. Robotics
  26. Security
  27. Travel / Tourism

2. Find 10 companies that have jobs for what you want to do.

From the list of industries that you defined above, find 10 companies that have open roles for what you'd like to do.

Feel free to scour the list of job boards earlier in this post.

3. Find 10 open job descriptions within your list.

Within the list of 10 companies that you've collected, locate their Careers or Jobs page, and identify 10 job descriptions that you would be interested in pursuing.

Copy and paste the contents of each job description and save them somewhere, such as in Google Drive or Notion. Include the original URLs as well.

This is done because job descriptions can disappear without notice, so we'd like to save a copy.

4. Choose 1 job description to identify your curriculum.

From the list of 10 job descriptions that you've collected, choose one that best represents the role that you're seeking.

Read that job description carefully, and jot down a list of skills that the job asks of you.

Refer to the example shown in Focus on 1 job description for illustration.

5. Identify a take-home prompt that is small and self-contained.

You now need to come up with a project idea that:

  1. Exercises each of the skills collected above,
  2. Is small in scope (so you don't spend forever on it), and
  3. Is ideally related to the company's core business in some way.

Refer to the example shown in Design a take-home test for illustration.

📚 If you liked this post, you'll like this too.

Learning frontend development in 2022 is incredibly overwhelming.

There’s so much to learn, so much to read, and you might feel like you haven’t learned all the concepts properly.

Thus, I’m working on a workbook that helps you go from zero to working frontend engineer in a friendly, but action-focused way.

It’s called Etudes for the Web Browser, and this post is one of the chapters. If you're interested, you can sign up for email updates as the workbook takes shape:

Are you looking to break into frontend development this year?
Which of these tips will you try first?
Please feel free to tell us your plans in the section below 👇

© 2022, jasont.co