Giter VIP home page Giter VIP logo

tech-job-nyc-advice's Introduction

If I were looking for a job right now, I'd do quite a few things (most I did this time around, not enough of them in time for maximum offers tho):

TL;DR: Do the very hard + expert exercises on https://edabit.com/challenges/javascript or https://www.codewars.com/kata/search/javascript (or python, or the language you are most comfortable with) -- get to the point where you can do them quickly, and afterwards compare your solutions with the highly rated solutions.

If you are having trouble, do some of https://leetcode.com/explore/learn/

...

More broadly:

These are the things you need to know:
http://programmers.stackexchange.com/questions/155639/which-algorithms-data-structures-should-i-recognize-and-know-by-name
https://www.quora.com/What-algorithms-and-data-structures-should-any-software-engineer-know

Google has a much more elaborate list on the "ideal" full knowledge base:
https://www.google.com/about/careers/students/guide-to-technical-development.html

Read these books, recommended by Google for their interview process:
"Programming Interviews Exposed, 3rd Edition" by John Mongan, Noah Kindler, Eric Giguere
~ https://www.amazon.com/Programming-Interviews-Exposed-Secrets-Landing/dp/1118261364
"Cracking the Coding Interview, 5th Edition" by Gayle Laakmann McDowell
~ https://www.amazon.com/Cracking-Coding-Interview-Programming-Questions/dp/0984782850
"Introduction to Algorithms, 3rd Edition" by by Thomas Cormen, Charles Leiserson, Ronald Rivest, Clifford Stein
~ https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press/dp/0262033844
(All are easy to find as pdfs online as well)

Consider watching this series from MIT for actual lectures on some of the topics from above:
https://www.youtube.com/watch?v=HtSuA80QTyo&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb

AFTER fully prepping for the vital stuff from above (seriously, you will be quizzed in interviews about them), start doing some programming puzzle exercises to practice these skills for interviews:
https://projecteuler.net/
https://code.google.com/codejam/contests.html

Then transition that same practice into to job application with some more company/job focused exercises that lead to offers:

https://codefights.com/signup/B2WP4vmrgPaK2AQ6k/main (affiliate link for me)
CodeFights is one where you practice your skills and then get job offers out of your performance there.

https://www.hackerrank.com/
Hacker Rank is same thing as Code Fights but I haven't tried this one yet.

https://www.codewars.com/
Code Wars is another of the same idea that I haven't tried. Not sure how long the market will support so many of this kind of concept...

Once you feel properly prepared, sign up with all the services that serve as recruiters to get you job offers:

http://fbuy.me/ehqja (affiliate link for me to Vettery.com)
Vettery is how I got my current job, you sign up and fill out your resume and then employers contact you.

http://www.interviewjet.com/candidates/sign_up
InterviewJet same idea as vettery, only vettery is done better -- sign up for both since they both get jobs

https://hired.com/x/1h2sf (affiliate link for me)
Hired is more popular than Vettery or InterviewJet these days but they told me they had no jobs for me.... Go figure since I got lots of job offers from vettery and interviewjet. Obviously doesn't hurt to have an account everywhere.

https://www.untapt.com/
Untapt is for finance jobs. I never got even one interview from this, so I'm sketched out by it. Still... as with hired, it doesn't cost anything but a bit of copy paste from the other sites you just signed up with.

https://triplebyte.com/
TripleByte I never signed up for but it gets advertised to me a lot. Same idea.

Typical recruitment process for tech jobs using these services:

  1. get an automated ish "hey we're interested" email from the service on behalf of an employer
  2. READ UP ON THE EMPLOYER. Their website is a must first read, then Google, of course, then https://www.crunchbase.com/ and https://techcrunch.com/ if it's a recent startup that might have press releases about funding rounds or founders, etc.
  3. you reply to the employer with a nice email saying you are interested in them too. Make sure you do the reading on them before having a phone call with anyone, they will usually ask what you know about them before sharing any details, and they will judge you poorly if you did no research.
  4. schedule an HR screen call with them, about 30 minutes of lightly checking your background and potential culture fit
  5. schedule a tech screen call with them, about an hour, you will probably do a live coding exercise with some dev from their team, probably on https://coderpad.io/ which supports a wide array of different programming languages
  6. maybe a take home programming exercise, especially if the company's primary programming language isn't one of your main ones. If it takes longer than a few hours either you are doing it wrong or these guys are abusing your time and you might not want to work there.
  7. inperson tech interview for 4-5 hours, consisting of a few 1:1 or 2:1 technical interviews for 30-60 min each where other team devs will give a programming problem similar to the ones you practiced above and you whiteboard it with them, plus 1-2 manager interviews for culture fit. (Note that I understand this structure is mostly based on google/facebook/microsoft interview processes, so you can study up on those specifically for inspiration as well -- in books, articles and even youtube videos about them)
  8. they call you to propose an offer and see if it sounds agreeable. If you like it they write it up and send it to you. Feel free to ask them for a week or two to consider the offer if you are expecting others to come in shortly as well.
  9. You joyfully say yes or very nicely say no. You never know when you might run into these guys again far too suddenly. I interviewed someone at my last job (to be my boss there) who did end up offering me a job at the company he instead went to (not intentionally, total surprise to both of us when their recruiter contacted me and mentioned his name) -- but only after asking me about some of the things I mentioned while interviewing him previously. Small world.

When you are interviewed:

  • be nice, do not complain about any previous employer, at least not more than a sentence or two, lightly
  • express interest in the property/service during the interview -- if you need to, lie, it's fine
  • give a good reason for your interest in this role at this company other than location/convenience/pay -- the team, the product, the industry, etc
  • ASK QUESTIONS. This is vital, you are definitely judged by the quality of the questions you ask. Read up on good questions to ask if you can't think of any.

You will surely get many job opportunities if you do all of that. Of course, doing all of the above, mainly meaning the practice, is a nontrivial amount of work/studying. Probably only a few weeks / a month though.

Good luck!!

And mention my name if you ever want to apply for anything at Braze: :) https://www.braze.com/about/careers/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.