Ask HN: Graduating CS soon, how do I find a job?
Like the title says I am graduating with a CS degree soon. As I am in my final year, I am getting a bit worried that my resume is kind of uninteresting.
I've applied at probably 3-4 dozen places through my school's job board over the past month and have received zero responses. These are applications for entry level and internship positions. I'm worried my resume just doesn't standout. I only have a couple projects under my belt and no other professional experience.
How can I stand out to recruiters and employers? What can I do to improve my resume? I've worked with many different technologies but I'm afraid because I haven't bothered to work on mastering any of them that an employer wouldn't wanna take the risk on me being able to learn their stack.
140 comments
[ 4.8 ms ] story [ 158 ms ] threadAlso, if you graduate in the fall (or before), there's no reason to be applying for internship roles.
It might help to have links to working demos for projects listed on your resume.
When I was graduating, basically all of my leads came from job fairs. Does your school host those? Does a nearby school host them?
Other ideas:
- Alumni networks
- Professors with industry connections
- Friends from school who interned with companies during previous summers
- Friends from school who graduated last year and have found jobs at companies
- Even extended family members might have a useful connection
To reiterate: automated application portals are notorious for rejecting large swaths of qualified candidates. The only way to get past them is a human being, even one you don't know all that well is fine. I've gotten my foot in doors via friends-of-friends that I've only met once.
Best of luck. I'm sure you'll find a job eventually, there are lots of them out there!
If you'd like to post your email (a throwaway is fine) I'll email and review your resume, I'm ~10 years into my dev career.
Outside of what pg5 user already mentioned, there is probably only 1 more thing you can do.
Employers want problem solvers and people with skills. You may not be able to offer that just yet.
So, you need to instead demonstrate you are worthy of investment. That you are hungry to learn.
That is generally not a quality or a byline on a resume.
Being worthy of investment is to be demonstrated. Think about that.
Its all about behaviors, not skills: Open source contributions, going the extra mile, hustle, and grit.
As far as I can tell... Google is still around?
take action, give 2 weeks severance, move on. both sides.
now, someone that turns into a problem after 5 years, that's on you. they weren't bad when you hired them, you made them that way.
The senior developers are busy making deadlines for products that should have been delivered moths ago, so they and their managers can't really afford "knowledge transfer".
A young employee is far more likely to fail in this kind of enviroment than someone with some experience.
I got my foot in the door by applying to an unpaid position and lying about my knowledge. They were looking for experience in a particular framework and I then learned the basics of it over the weekend.
I can understand the resistance to do this given that juniors are demanding well over six figures and the widespread recommendation to skip town every two years. Paying $400,000 to spend a year eating up a senior engineer's mentorship time and then getting a year of work taking tickets off the wall is not a great trade. I don't know how to square this circle.
Where I live, you can get 15 motivated and capable CS graduates for that kind of money.
From what I've heard and seen, anyone hiring a junior engineer is getting overwhelmed with applicants the moment they advertise it. Going up in experience level, the same places that are overwhelmed with junior engineers are begging for senior and principal engineers and are leaving these positions unfilled due to a lack of applicants.
Even at a very senior level, I've been asked to do some ridiculously sysadmin-ish stuff that I'm not good at, and I've seen more junior people loaded up with web/testing/devops/admin work to the point that the majority of their time is no longer being spent on what is ostensibly their job.
The most effective way to get a foot in the door, and the thing I wish I did when I was in college was go to all those different career fairs that your college likely hosts.
Talk to the different representatives of each company, tell them what you like, what you're interested in and _ask them questions_. What interests you about their company? If you seem excited about it, they are more likely to be excited about you.
If you have any kind of CS Alumni group, talk to them. Network. It is 1000x easier to get a job knowing someone already at the company vs applying blindly.
Some bigger tech companies FAANG, S&P500, etc have recent grad positions and programs. Those are like rocketships to get you ahead at the company. They might sound too junior, but in practice, you will be working with a different team every 6 months, making connections, and working on tons of different real world problems you can add to your resume. At the end of it, typically you get to pick which team you liked the best, and if they like you back, that relationship is worth its weight in gold for things like promotions etc.
If none of that is on the table then first step is to create a LinkedIn. List all your skills that you know, even if you dont feel that you know them the best.
Have any side projects? Anything you can show in Github? List that as well. No recruiter will look at this, but it will still make you look good.
Lastly, and what I had to do, was literally sit in a cafe, your bedroom, wherever you are, and just apply to every vaguely relevant job that pops up in the area you want to work.
When I graduated I didn't live in a major tech city, so I very literally applied to every jog that popped up with my skill-set (in my case iOS). I swear I applied to over 500 positions. Got maybe 8 interviews. Made it to the finals in 5 and took one job.
If you end up doing this, work smarter, not harder. Make a generic cover letter, and add a paragraph you can change to look specific to that company. Leave the rest the same.
You'll see the same 5-6 job application software tools pop up when applying to different companies. Make a text file that has the info they ask for and just copy and paste. Writing it out each time is exhausting, and soul crushing.
It's normal for it to take a while to get your first job. It doesnt feel great, but we've all been there, and there's nothing wrong with you if it doesnt happen right away. You will get there, I promise.
Agreed, hiring is largely arbitrary when you're fresh out of school so if you can get someone on your side, they can go to bat for you when the decisions are being made. And if you have the opportunity to talk to the CTO or another big shot, make sure to take it. They can literally hire you with a word, bypassing or overriding any process the company may have in place.
Job fairs are usually the best way to be recruited through your school. Companies have to commit resources to attending job fairs, so they have an incentive to actually hire some of the people they talk to.
New grad resumes are basically all the same with few exceptions. Companies have little ability to screen new grads without actually interacting with them (e.g. interviews, phone screens, take-home tests). Your best bets are referrals, which will fast-track you into the hiring process. Referrals can be through distant connections, so don't be afraid to ask acquaintances.
Otherwise, you can try applying to companies directly. There are more opportunities than your school's job board, and even if they are the same companies, they probably pay more attention to their own application channels than the various crappy school job boards they forgot they posted to.
The network consists of the actual alumni of the school, not the career counselor who probably didn't go there. Get a LinkedIn premium subscription and go ask people who attended your school to put your resume in the referrals pile. Just random alumni.
Many will do it. I have done it for people. Many have done it for me. Random people, because you share a school, will refer you.
Cram leetcode (aka interview skills) and keep applying to large companies through their websites. Your university's job board will help mostly with finding local companies near the university, but they are not the sum total of your opportunities, not by far. Furthermore, companies that post on university job boards get flooded with applications from that school, so they'll stick with the school's cream of the crop. Start with FAANG and then work your way down the Fortune 500. Small companies / startups need people with established track records because they need to produce results quickly; large companies have built the internal processes over time that protect the company from the inexperience of junior engineers and will therefore prefer to hire junior engineers in order to save money.
The industry is in dire need of labor so it shouldn't really matter what you put on your resume, as long as you put down that you have a CS degree and you're applying for junior engineering positions at large-enough companies, quite frankly that should be enough to at least get you a phone call for initial HR screening. If you're not progressing to other interviews or offers, that's a different question, and barring any personality complications that could come up ("interview skills") it probably goes back to you needing to cram leetcode ("technical skills").
If your resume isn't getting you phone calls, find someone in your career center and ask them to help you with your résumé. You don't need it to stand out - not in this jobs climate. You just need to make sure you're not making stupid mistakes with it.
So dont worry about that.
Worry about location. If you AND all your friends in town arent getting responses - move. If you are sitting in the boondocks move closer to larger cities. Best case would be to move to the most buzzing active cities where you have friends who have access to school job boards and/or have landed jobs/know the process enough to help.
I spent 6 months in a smaller town getting no calls. Moved to NYC and the whole story changed. This ofcourse was because I had friends going to multiple schools there. Thanks to which I would keep getting info on which company was on campus, which team within the company, what they were looking for, what type ot questions etc. So even if I missed them on campus I would apply via the site knowing which positions to target.
Also keep brushing up every single day on a list of fundamentals, known interview questions etc. Dont let the activity over time rot the brain away. So when a call does come certains basics are on your finger tips.
If you live in the middle of nowhere it is very hard to get a job.
Per a (now very old) HN thread there also seems to be a bias against rural candidates.
Point being, if you can break into the market and rack up a bit of experience, you get that some of that local bias for yourself.
Are any of your projects visible on the web? The best projects are ones where I as a reviewer can click a link and start instantly interacting with your software. Projects like this are directly responsible for at least 3 people I know who graduated last year getting their jobs (based on feedback from interviewers who reviewed their resumes, they did not have referrals).
It's hard to critique your resume without seeing it but in general:
- Your resume should be submitted as a .pdf file, nothing else is acceptable
- Your resume should contain your name and contact info as well as links to github/linked in at the top
- Your resume should contain a skills section with a list of technologies you know, this will get you past keyword filters
- Your experience section should be broken up by project, and each project should have bullet points outlining the task you accomplished and any technologies you used to to accomplish it.
Even 100-1000 monthly active users is impressive.
If your site/app is free, this is highly achievable.
Given how I have seen that pdf-to-text ATS systems sometimes generate a completely blank set of text out of a text-rich pdf, no. A docx is perfectly acceptable.
If it doesn't work out, continue doing temp internships till you get a job. You should be able to survive on an intern salary when you are young.
An addendum: hiring isn't a meritocracy, even in engineering. Make your interviewer(s) feel good. Be conversational.
I was given this advice and thought it was brazen and aggressive and that nobody would do it. I didn't after graduation. I was wrong and when I tried it later, it worked. And I ended up doing it for others who messaged me.
Apply though the back door for VIPs. Plenty of people are happy to put you in. Random people on Hacker News have referred me. Random people from whoishiring threads have been willing to ensure I got an interview.
Related... Mayuko is a software engineer who has worked at Intuit, Patreon, and Netflix. She now makes YouTube videos full time, many of them focused on bootstrapping a career in tech. Her latest video is about increasing the likelihood of getting engagement when doing exactly the kind of thing the parent suggests. https://youtu.be/SJ3cXmRX7mM
How does this help with asking alumni of your school for referrals? Can't you do that with a regular account?
Without it, I think you need at least to have a mutual connection. (Which wouldn't be that hard to achieve with fellow alumni.)
When candidates do this to me I am happy to refer them after I personally screen their resume and I converse with them a little (written or verbal).
I don't refer someone unless I think it's worth my company spending money evaluating them.
I dislike the pushy candidates who believe this approach is a no-effort side door.
Try applying to smaller companies. Smaller companies aren't going to land the candidate from a top 10 school who already interned at multiple Fortune 500 companies. But small shops need to hire talent too. They're digging deeper and they have to read the resumes more closely. There isn't much of an HR department, and the hiring manager might be sifting through the raw resumes themselves.
If you still want to land a big company job, you're going to need to bypass the HR filter by finding a direct line to the hiring managers. Maybe you have some friends or alumni you've met who are at the company and can refer you directly to a team. You can meet these people at networking events, recruiting fairs, or other social activities. Creativity, determination, and luck play a big factor.
This describes my situation when I'm hiring entry-level developers: I, the hiring manager, am reading each application that comes in. However, I think this is probably more true for smaller companies that are not venture-backed; venture-backed companies probably have enough funding to hire senior developers (and are probably more rushed to do so).
For the OP: I'm not hiring developers at the moment, but if you'd like to send me your resume (you can reach me through my profile), I can offer some feedback.
But just in case it is possible…
Maybe they should try offering meaningful stock packages, rather than 0.1% and less?
Meaningful as in 0.5 to 1% for a senior engineer, 4-6% for a manager, until salary improves.
Also, try offering stock with no vesting cliff. It’s not smart to trade salary for stock when you might leave before the cliff through no fault of your own. So smart candidates often round the value of stock to $0, especially before the cliff.
If smart candidates are rounding the grant value down to zero, smart companies will not seek to give grants that are multiples of the current size. (That’s giving away $100 bills to someone who values them at less than your cost.)
When you’ve raised a $20M round and have an employee pool that is 10-20% in total, you don’t have many 1% grants to give…and you have exactly zero 6% grants to give.
This is true, but the percentages illustrate how silly many investors are being about the resources necessary to put together a good engineering team.
I've had offers from startups with well known VC backers who wanted me specifically. They'd tell me their upper bound on cash, and then assuming I thought they had a decent chance, I'd calculate how much stock I'd need to make for the expected value for working for them to be at least as good as at a big tech company. Generally the calculation came out to 4-6% of the company per year.
That number could be lowered if I had access to the cap table or were being issued some kind of preferred stock, but no one's willing to do those things either.
Cash is cheap and labor is expensive but investors still want a way better deal than any engineer could dream of.
I sold the company 3 years ago. My latest company is doing so much better than it could ever be possible if in Silicon Valley in terms of "R&D budget/Investor capital".
It means we'll attain things that Silicon Valley startups with exactly that kind of personnel compensation requirements NEVER WILL.
Vesting cliff isn't the only problem with stocks either. Common stock holders can easily get screwed over when raising or during any liquidation event that isn't an IPO or direct listing. The disparity in treatment means as an engineer you need to value stock at 1/10th face value as a rule of thumb.
One thing I have worried about though is they might require someone who is more experienced. I have noticed there are not many small companies on my school's job board. Would you know of a place where I could find these?
Another commenter mentioned checking the website of VC firms for start-ups. I think I will give that a shot.
I appreciate all the help from everyone in the thread, I am reading all the comments.
The few small to medium sized companies on your school's job board are actually great opportunities. Those companies don't have the resources to recruit many places so they might not even be looking at any other schools or programs. There is probably a very strong alumni connection to your school or program. They likely know exactly what they're getting with those new grads and wouldn't be recruiting there if they weren't comfortable with that.
> Would you know of a place where I could find these?
One problem with small companies is that they tend to not advertise their job openings everywhere. You can usually find different ones everywhere you look. The worse they are at advertising the job, the less competition you have and the more likely you resume will be considered. So it does pay to look beyond any one job board.
> One thing I have worried about though is they might require someone who is more experienced.
This varies company by company. Some companies founded by new grads or college drop outs exclusively hire new grads. Some big companies exclusively hire experienced engineers. And there's everything in between. If they have a job posting for entry level or new grads, go for it.
This would indicate that there is a severe oversupply of candidates eager to work in this industry.
Which may well be true, but conflicts with the narrative that there is a severe shortage of people.
Not the industry as a whole, but certainly there is an overabundance of people trying to land a job at very specific companies (FAANG, and a handful of others).
There would be an industry oversupply if this situation were widespread, but it isn't. The industry has a shortage, certain famous companies are the exception rather than the rule.
It might seem this way, because the narrative is almost intentionally simplified to the point of being vague enough to support almost any narrative.
Shortage is real, but what often is omitted is the fact that it is the shortage at the senior level. At the entry level, shortage isn't really a thing. It isn't an insane oversupply either, unless we are talking the few popular FAANGs, but it isn't a shortage at the entry level.
There's more possibility of shortage at the senior level and in more specialized areas.
Still, I'm not entirely sure how real it might be. Depends how it is measured. I'm in very senior and somewhat specialized roles, so that's my perspective. I see lots of companies opening reqs in my area and never filling them. The same job posting will stay open for years, sometimes.
Now, is that a shortage? Obviously they are continuing to do business just fine for years even without filling that position. Presumably they are interviewing tons of people and never hiring anyone, because they don't really feel any pressure to fill the position (otherwise, they would).
So it's worth considering, does that opening even really exist? Technically it's posted, they might be interviewing, but if nobody is ever good enough to hire and they continue to operate without ever hiring anyone... it feels more like a phantom req. Should such phantom reqs even be counted towards stats of companies trying to hire?
Just a generalist qualified senior engineer alone is something that is in shortage. If you dive into senior specializations, the shortage is even stronger.
My point was that the media and people tend to forget about the whole senior/entry distinction when it comes to shortages, and loudly proclaim "there is a shortage in tech" without specifying at which level, and then get a ton of entry level fresh grads yelling at them "no, there is no shortage, we struggle to get jobs".
>Should such phantom reqs even be counted towards stats of companies trying to hire?
If they are genuinely trying to hire someone for that position, but just have been unsuccessful to find a qualified candidate, then yeah, absolutely it should count. And I don't doubt they are trying to actually hire. Because why else would they spend tons of engineering time and money on interviewing people with zero intent to actually hire anyone.
Even where I work, we get tons of applications due to the company's high profile. And even when my team was desperate to hire a mid-senior level, we had to interview close to 50 people just to fill one position. It wasn't a competition for a single slot either, we were just looking for someone who was baseline qualified. If more than one emerged, we would have hired them all and just rerouted them to our sister teams who were looking to fill some positions as well, or to elsewhere in the company. But getting that one baseline competent person (we ain't talking about some 10x rockstar engineer type) was already a struggle.
Not so much zero intent, but I see groups who keep job postings open for ages just perpetually holding out for that perfect unicorn that doesn't actually exist and can't exist (you know, the person who has 20 years experience in low-level kernel development but is also a UI design god and a full-time devops guru on the side; I exagerate but only slightly).
So technically they can claim shortage of experts, can't hire anyone. But meanwhile the team continues operating just fine for years even though this magical person can never be found.
So to those job postings, I consider them essentially fake. They just inflate the count of positions that can't be filled by a position that never will be filled.
A shit ton of people apply to FAANG companies because of the money on the table despite having no professional experience as a software engineer nor writing any code.
The prospect of working on Bing or at Microsoft wouldn't exactly excite me perhaps, but it'd only have to be the best paying (by some non-trivial but not massive amount) offer. (Or everything else less exciting!)
Perhaps you mean search engine experts, not grad entry or 'at any price' in that sense, so the pool they're looking at only wants to work on the biggest most exciting one, which happens also to be willing to hire all of them?
Keep in mind those large companies can be very desirable to work for - many people don't want to work for these smaller companies, including myself at a younger age, but in truth I think smaller companies can be better to work for depending on what kind of person you are.
Someone that’s good but not great with 7+ years of experience is going to have a rough time as are any senior people that picked the wrong software stack.
Tufte compared PowerPoint presentations to having the information density of Soviet-era propaganda posters (i.e. nearly zero).
You can validly claim similar comparisons with resumes!!
Venture capital firms do tons of due diligence, and if you join early enough, when an exit happens it could be a big payday.
Write to them about why they resonate with you. Use LinkedIn to find out the right person to message. Your goal is to get into the interview pipeline.
Be eager. Enthusiasm counts for a lot. If you’re thoughtful and personable, foot in the door is all you need.
Any entry-level or graduate position is going to have to train you, good employers know and acknowledge this. Really there's always an element of learning how things are done when entering a new business.
Don't worry too much about job fit. Be broader than you might feel you need to be. Highlight relevant experience for individual jobs. If it's a python job, put your python projects first (for example).
Single page resume, no picture. Find an attractive template and use it.
You can use a section on technology interests to add more technology and express keenness for particular topics. Especially since you're soon to graduate.
Beyond all that, hiring is a high variance activity. There's a lot of randomness with how people review resumes and what will stick out for them. Don't get discouraged.
[1] https://uwaterloo.ca/future-students/co-op