HACKER Q&A
📣 i_am_mike

Advice for applying to Junior Software Engineering roles?


Hi HN. Do you have any advice for applying to Junior Software Engineering roles? How to get through the automated resume screening, does having projects on GitHub help, etc?

I hear the job market is "hot," but is that true of entry positions too?

I'm a self-taught programmer who recently decided to finish my bachelor's degree in Computer Science. I'll be finishing in a month or so, and I'm trying to do some planning in advance.

I guess what I'm asking is: If you were fresh out of college, how would *you* go about getting a job?

If anyone is curious about the weird graduation time, I go to wgu.edu, and they let you accelerate through the classes as fast as you can go. I recommend it.


  👤 Mc91 Accepted Answer ✓
> I'm a self-taught programmer who recently decided to finish my bachelor's degree in Computer Science. I'll be finishing in a month or so, and I'm trying to do some planning in advance.

If I was you I would apply to internships right now to a lot of companies as a college student. It might be too late if you're about to graduate.

Internships are the easiest way into a company as a junior. You intern somewhere for a summer between junior and senior year, if they like you, you might get an offer when senior year ends. You seem past that, but can apply any how.

One thing, if you're considering getting an MSCS, is say you want an internship between the BS and MS. Even if you wind up not doing the MSCS, you'll have some experience under your belt. If you decide to not do an MSCS while interning, you can apply to other companies while interning, and if you get an offer tell the company you're interning with that you will postpone or not get your MSCS and that you got an offer and will not being going back to school right after the internship - you might wind up getting two offers (the company you applied to while interning, and the company you're interning at). You can be candid during the internship application right off the bat that you're applying for an internship between a BSCS and MSCS, but also have in the back of your mind that you might jump into a career after the BSCS and there is the possibility you might postpone the MSCS.

You can apply as a junior as well alongside this. The main thing is getting some offers and getting your foot in the door.


👤 fidrelity
Your first job is definitely the hardest to get in your entire career. I wrote a few words of advice about this [0].

The summary of my advice is:

* Don't "spray and pray" your application, but look for companies that fit your tech preferences and specifically hire for junior devs.

* Prepare for the interview process. That can be as easy as asking the recruiter what questions you can expect in the interview (often they spill the beans without thinking)

* Build, build, build. The best way to show them you can in fact deliver is by having at least one up-and-running side project, the code on Github, etc. Give them something to look at even if you think it's not terribly impressive.

[0] https://andreschweighofer.com/career/how-to-get-the-right-jo...


👤 onion2k
My advice: Know yourself and don't believe the hype.

There are lots of jobs out there, and lots of people will tell you that you need to join a FAANG as a junior on $150k to be successful. That isn't true unless working for a FAANG on $150k is your definition of success. Figure out your criteria (where do you want to live, what hours do you want to work, how much is your ideal baseline salary and how much will you sacrifice for equity lottery tokens or bonuses, what kind of work do you want to do, etc) and don't compromise on them too much.

You're about to go into an in-demand industry with a skill that people want. You are in control. You don't need to settle for the first role that's offered if you don't like it, but you're probably not some sort of genius 100x dev who can demand whatever they want either. Stay grounded, but be ambitious. You're starting out on a pretty exciting journey. Good luck.


👤 yakshaving_jgt
As someone who does hiring, I want to see a brief, personal, informal email.

If it feels like you’ve copied and pasted some mess of tech buzzwords and addressed it to “dear hiring manager” (I get this a lot), then it’s going straight in the bin. Ideally, I’d like to see:

Hi ,

I’m a junior developer trying to break into the industry. I studied x at y, and I’m super interested in . I’m hard-working and I love to learn. Are you available for a chat about this?

Regards,


👤 pella
> does having projects on GitHub help?

yes.

My advice ( valid in the pre-covid era )

- Check the local tech meetups ( https://www.meetup.com )

- Give a presentation.

- In the last side .. add some indirect info about your job search.

- go with an after party - and make a personal connections.. ( and ask advice )


👤 mooreds
> I hear the job market is "hot," but is that true of entry positions too?

Not in my experience, based on talking to quite a few newer devs. There are a ton of folks out there.

My advice is:

   * target certain companies
   * stand out
How can you determine which companies to target? I don't know you so can't give direct advice, but generally, find companies that are:

   * growing
   * big enough to support jr devs (this depends on the company, but 50ish for a product company and 10ish for a consulting company is my rule of thumb)
   * in a domain you have some interest in learning more about
   * working with a tech stack you are interested in learning more about
   * in your area or an area you would be willing to move to (for a jr dev, remote can be really tough unless you have prior experience) 
Then, research these companies and learn about them. Play with their product. Read about the sector and competitors. If you can, build something that is using their product. Yes, this is a lot more work than just firing off a resume, but it will have a higher ROI too.

Then use this to stand out. Here's an incomplete list of ways to stand out:

   * attend/present at a meetup that the company sponsors or sends folks to
   * meet with the hiring manager/recruiter from the company before you want a job and ask for general career advice
   * share an open source project you built with the same tech stack as the company uses
   * write a few blog posts on the company's sector
   * volunteer at a tech conference where the company may be attending (if they are a ruby shop, at rubyconf, for example)
When you apply at the company, make sure you tune your cover letter and resume to outline how you stand out.

Of course, the pre-requisite is that you can code. Make sure you can do that first.


👤 MattGaiser
Get a LinkedIn premium subscription and ask for referrals from your fellow alumni. Just flat out send your resume in the message and ask to be referred.

Some will find it sleazy and there is going to be at least one person who replies to this with some version of "I hate this behaviour", but plenty will happily throw you into the HR system as we get a reward for referring you to the company. At my past company, every single person who asked for a referral from me got one.

Don't target senior people with this. Go for those who are mid level. People who have opinions that count, but are not pressed for time and are not being overwhelmed by other people trying the same strategy. SDE IIs.

A referral, at least everywhere I have worked, has guaranteed human review and often lets you make a short case for why the person should be interviewed.

A referral can't guarantee anything else, but it can usually guarantee a set of human eyes. After that, it is up to you.


👤 tlear
Market is hot, not so much for Juniors. Big part is that with everyone working from home mentoring junior developer is a massive pain. For every 2 you hire you lose probably 80% of productivity of a senior dev for at least 3-4 month.

For concrete advice, drill those idiotic interview questions. People use them because who knows.. being able to solve everything is impressive. For take homes do a good job on the cleanliness aspect, write tests..

Pick one language and get decent at it. Be it python, js or C++. Be able to solve basic stuff on the HackerRank etc using that language.


👤 tombert
When I dropped out of college about a decade ago (oh how the time flies), I realized that it's a lot more about "quantity" than anything else. Apply to every job that seems interesting to you; worry about qualifications later. It's not your job to determine if you're qualified, it's theirs, and as long as you are upfront about what you know, they might be willing to overlook a lack of qualifications.

> How to get through the automated resume screening, does having projects on GitHub help, etc?

It definitely does, though I would recommend not putting school projects on your resume, at least projects where everyone in the class was doing the same thing. I can't tell you how many people I interviewed who put the same Handwriting Recognition project on their resume, only for me to hear that they basically just followed what the teacher told them.

However, if you can really geek out about a personal project, talking about technical details and what you had to figure out to make it work, that goes a long way, degree or not.

P.S. I recently finished the WGU Bachelors in CS as well...congrats on making it this far, and if you're planning this far ahead for a career I am confident you'll make it in the job market. If you need any help in the future feel free to email me, address in HN profile.


👤 ForgotMyPwOops
Being likeable is more desirable than being an amazing programmer

People would much rather work with someone mediocre who is pleasant than someone very talented but who brings everyone down, this is especially true for junior positions where you're expected to not be very good... so as unfair as it is make sure you come off as charismatic in your interview


👤 roflchoppa
If you don't need a large boat of money passed your way, consider working as a staff engineer at a local university, they have less stringent screening on whom to hire, you can find senior engineers that have worked in the private sector for years that have a good information base to tap into, and the work life balance is better.

Look at research institutes/universities in the area, for me that was; UCSC, UCB, Lawrence Berkeley Labs, Stanford...


👤 ghiculescu
Avoid remote only companies; target those with offices. They will be a better learning environment for you and they will be keen to meet people who don’t think remote is the only way to work.

Once companies reach a certain size (30 people?) someone will have HR in their title, find that person on LinkedIn and add them and then just tell them you’re looking for an in-person junior role once they accept. Below that size find the CTO or CEO and do the same.

Good companies will have a take home coding challenge that models real work. When you get one try and return it within 3 business days.

If you’re in Chicago or open to moving, I’m hiring juniors, details are in my profile.


👤 suc_syn
Hello, I am currently hiring for 2 junior positions. There are a few different things I look for in juniors. First is smart and gets things done, any history you can show of building your own projects, from what the motivation was, how you established a goal of "finished" and how you got it there. Also what as the person shown a lot of interest in, and where does it look like their career is going. If you have been doing a lot of graphic programming or building software interfaces for hardware then why are you applying to my web dev position? Do I think the few years of training you will get me more years for productivity, so try to look for roles that align with your interests. Second technical skills stuff. Do you know how to use any IDE, bonus points if you are familiar with the one that is commonly used in our group. We make heavy use of GitHub so you would get bonus points if you are familiar with it but won't get penalized if you aren't, I assume that hiring a junior is hiring somebody that needs to be taught everything, and anything that you are already familiar with will be great. Third soft skills, especially for junior positions, I am way more interested in somebody that is bright, easy to work with, and will fit into the team well than I am looking for a diamond in the rough that will turn into a 10x engineer but is also a giant pain to work with. After 2 years of working together if I need get a ping that is you asking for help am I going to feel excited for the chance to teach and work together or am I going to clench my teeth and try to punt it until later. As for getting through the HR/recruiter screening each manager should have a sense of what their tolerance for teaching is. You should apply to any job that seems interesting to you, and let them tell you no. Very rarely are position metrics hard requirements 1-2 years could also accept candidates fresh out of school or boot camp.

👤 faizshah
I was in your position at the start of the pandemic. I personally think I wasted a lot of time doing side projects and hackathons when they didn’t seem to matter that much, I got way more interviewers when I put a few part time jobs at school and a non profit on my resume than I ever got off side projects. I applied to around 200 companies and got an interview with around 5 of them (one of them ended up being an internship at a FANG where I now work full time).

In my opinion you should try to apply to as many jobs as possible every day and by as many as possible I mean 15-20. Dont bother with a cover letter I never got a interview for any of the applications where I wrote a cover letter and demonstrated “interest and value” like you’ll read online.

I also recommend that even though it sounds like you’re in your last year you should also apply to internships at the big tech companies. I applied to around 140 companies in my senior year and got rejected by all the full time positions but got accepted into a FANG internship after I graduated its the best way to get into a FANG (if thats your goal).

The other thing I recommend is focusing on leetcode as much as possible.

Also for new grad positions they are mostly looking for keywords relating to the languages they mention in the job posting to be explicitly in your resume. I recommend taking some time to use some standard resume format and make sure your resume is written with bullets that are in the “i accomplished x as measured by Y by doing Z” format. Make sure whatever you say in Z matches the keywords in the job postings you are applying to. Also a small tip is that if you apply in the morning it does seem more likely that a human will read your resume.

Also one other thing I will add, referrals really do make a difference. My friend was a low level IT contractor at a FANG and he gave me a referral and out of 10 applications only the one he referred me for ended up getting an interview for me.


👤 htsh
1. the market being so hot for mid-level engineers means that we are considering and hiring good junior engineers where we cannot find adequate mid-level talent. we would rather hire and develop a junior than compromise.

2. show code on github, sure, but if you can demo the work deployed somewhere it goes much further. everyone has a crypto tracking or twitter sentiment project somewhere, but i need more. if you can deploy the work somewhere in a smart way, great. if you can communicate well, great. a project with a 2-5 minute video tells me a lot more than code alone (which anyone can do with a tutorial).

3. demonstrate that you are easy to work with and that you are willing to learn. if a candidate has enough code or work on their resume, that is great, but a good cultural fit goes a long way.


👤 cvhashim
The job market is great…for mid-level and senior engineers. One thing I’d say is to get a referral for Jr level roles and that will atleast get your resume in front of someone. Also attend virtual hiring events. YC has the Work at a Startup event every once in a while. Take advantage of services like LeetResume for resume writing.

Edit:

https://hackerx.org/ for hiring events and networking


👤 thekiptxt
Lots of good advice here, here's how I kept sane:

Focus on your strenghts for the two components of getting an entry-level job: (1) landing the interview and (2) landing the job.

Landing the interview is some percentage of the number of real leads you have, based on the strength of your resume.

To get real leads (i.e. resume won't get trashed): connect with fellow alums, ask everyone you know if they know someone who can put you in the pipeleine. Shotgunning applications are not real leads. If you have a small network, then focus on strengthening your resume as much as possible. If you have a small network, find creative ways to expand it.

Landing the job (given that you have an interview) is a function of luck, likeability, and performance. You should intuitively know if your weakness is your charisma or how well you can answer technical questions. Hammer on the weakness.

The benefit of thinking this way is that I could survive rejections without thinking that I was a bad candidate: I just had to tweak some component of how I came across. From there it becomes a problem to solve, rather than a depressing result to accept.

Best of luck! Like others said, the first one is the hardest, but it can be done.


👤 kavyaj
To your question 'how to get through the automated resume screening', I literally just wrote a post today on Dev.to: https://dev.to/kavyaj/how-to-get-noticed-by-tech-recruiters-...

For the other points: Firstly, I would say personalizing your application for the role you are applying for really helps. Sometimes students fresh out of college mention a ton of skills on their resumes that they only have an idea about. That wouldn't really help unless you can really contribute. Write only those skills that you're confident about and have some projects to back your claims.

Secondly, connect with people within the company that you're applying for - they needn't be the direct hiring manager but anyone who can give you some reference, some insights would really help you get an edge over the other candidates. You can find folks on LinkedIn, Twitter or other public platforms to connect.

Hope this helps and good luck for your search!


👤 staunch
Landing interviews usually just consists of submitting resumes and using LinkedIn, etc.

As for interviewing, beyond the basics of showing that you have some relevant skill/experience, there are two key things to convey:

1. Your enthusiasm for the company itself (its product/service/industry, etc).

2. Your enthusiasm for the role itself (specific application/service/technologies, teammates, etc).

You want to convey that you are excited, motivated, and "coachable" in areas where you're lacking. The best "hack" here is to look for companies and roles that you are genuinely excited about.

Be as blunt as you have to in conveying these points. Don't expect interviewers to be good at reading your signals. If you have to, just flatly state that you are excited, motivated, eager to learn, etc. to every person you talk to.

Don't overdo it but make sure this is successfully conveyed.

People are much more likely to hire someone if they seem like they'll add energy to the team. Even in cases where their skills/experience alone don't necessarily justify the hire.


👤 maxwell86
> I guess what I'm asking is: If you were fresh out of college, how would you go about getting a job?

Leetcode and hackerrank all the problems now that university is fresh in your mind. Do some programming competitions.

Get a job at Google, Microsoft, Amazon, etc. Work there 2 years. See this as your "real world" M.Sc. degree.

Then move on to whatever interests you. A M.Sc. or PhD or some other job.


👤 masterof0
Don't put Junior in your title on LinkedIn, apply for Software Engineering roles that require 1-2 years of experience. Putting Junior in your tittle is setting yourself to be lowballed, let the companies figure out how much you are worth. LinkedIn is a social network, polish your profile and try connecting (without harassing) with people that are where you want to be (company, position, ...), and ask for a referral, or help, I have helped many people across the years. Once LinkedId algos pick up your profile, recruiters will start DM-ing you. Try companies that business model is to get you hired, for example: TripleByte, Hired, ... Also as many people already said, the first job is the hardest, once you get hired, the learning just starts.

👤 scottiebarnes
Your biggest barrier is getting past recruiters/screeners. There's more competition for positions at the junior level.

Load your CV with the targeted keywords and phrases that fit the job posting and your skill set.

Your next challenge will be interviewing well.


👤 peanut_worm
A portfolio of personal projects really helps. I think thats what got me my jobs/interviews, because they always explicitly mentioned them. Don’t be afraid to send a lot of resumes out, there is a lot of competition right now.

👤 angarg12
I do tons of interviews, particularly at the junior level, so feel free to message if you want more specific tips about the process. I'll share some thoughts here:

* As some have said getting an internship is the easiest way to get an entry level job.

* If you are having trouble getting interviews, try to get referrals. Rely on your network, or don't hesitate to cold message people asking for help. Most people will be happy to help after a cursory check.

* Most people hate leetcode style interviews, but with no experience you can make it work in your advantage. Learn to "play the game" to stack the odds in your favour.


👤 balls187
> I guess what I'm asking is: If you were fresh out of college, how would you go about getting a job?

Contact my schools career services, and make sure I was available for all interviews during career fairs.


👤 allo37
I have been lucky enough to have not encountered automated resume scanning nonsense, or maybe I got past the HR-bots and didn't know?

Anyways, I always felt that what helped me get jobs was my personal projects and extracurricular activities. Anyone can sit through a few classes and pass some tests (OK, maybe not everyone), but not everyone can prove that they can actually, y'know, DO stuff. I feel it shows a certain level of interest and knowledge that can set you apart from other recent grads.


👤 giantg2
My company is hiring and borderline desperate. You do not want to work here though. I assume other non-tech companies are in a similar position.

👤 troyvit
Only apply for jobs you're actually qualified for. I'm currently screening resumes for a junior-ish position at a small companny. What I'm noticing is that even though we specify knowledge in certain areas, and people check the little box that says they have that knowledge, almost all of them actually don't list that knowledge on their resume. I pass on those.

👤 namelessoracle
The market is not hot for juniors. You have to really struggle to get the interviews as a fresh junior. Your challenge will be that recruiters will filter you out before anyone on the team will even get to look at your resume.

Easiest way like everyone says is to do internship > offer path.


👤 999900000999
Side projects !

Build cool things in your spare time and show me off. That's how I got my first job!


👤 faangiq
Have a pulse, apply somewhere. It’s really easy to get hired as a junior.