4 ms·
1) Get your resume in order. I'm going to assume that you are in the US, in which case, as a new graduate, your resume should be 1 page long (rules vary in Euro
by dtnewman 2y ago
1) Get your resume in order. I'm going to assume that you are in the US, in which case, as a new graduate, your resume should be 1 page long (rules vary in Europe and elsewhere). Having reviewed thousands of resumes, here's what stands out: clean, concise, and no grammatical errors or typos (if you make mistakes on the most important 1-page doc you'll ever write, then what does that say about how careful you'll be when writing code?). This is a one-page document (at this point in your career) that you have complete control over and it sums up your life, so get it right. This means having someone review it. Don't put any photos in. Avoid colors (especially bright ones). No need for a summary of who you are at the top. Have a friend look it over for mistakes. Most people think that they need to make their resume stand out with colors and gimmicks, but as a hiring manager, I've seen this way too many times to the point that I'm jaded. What stands out is a clean resume that communicates effectively. Oh, and always upload/send resumes as a PDF.
2) Applying to jobs by filling out forms online is going to be mostly fruitless. You will occasionally get bites, but even as a senior engineer, I've found these to mostly be wastes of time. Instead, find companies that you are interested in. Then, go on LinkedIn and find engineering managers, team leads or even senior engineers and reach out to them with direct messages. Everyone thinks they need to reach out to the CEO or CTO, but they get 1,000 messages a day. If you reach out to someone lower down, they will typically have enough sway to get you in front of the people making hiring decisions.
3) Even for the best engineers, there's a randomness and luck component to interviews. The best way to practice for interviews is to actually do them. Try to spread a wide net and get as many interviews as possible, even for companies you aren't interested in working for. The experience will get you in the groove. And remember, it's a numbers game. You might be great at LeetCode, but get that one question about heaps that you can't answer. Just learn from your mistakes and move on.
4) If you can, try to appear employed. For better or worse, people will see you as more desirable if you are employed. This might mean setting up an LLC called Foo Software, giving yourself a role of Software Engineer, and then bidding on projects on Upwork. You don't have to lie about what you are doing if anyone asks (and most won't ask for details), but this gives you something to put on your resume and some experience.
5) Everyone on HN talks about having amazing side projects on your github account. Take this with a grain of salt. I find that almost no one ever asks or looks at my github account when making a hiring decision. There's a small but vocal group of people who hate standard interviews and therefore like to say that looking at projects should be the metric by which you judge candidates. There's merit to this philosophical argument, but in practice, most companies just don't care.
6) As far as "unskilled labor", if you need the money, go for it. But I don't personally think that it will help you to have it on your resume.
7) There's lots of remote jobs today and by all means apply, but you will have the biggest leg up if you apply to jobs that want people in person and you are willing to go in to the office.