Are There Jobs Out There for Really Junior Developers?
March 19, 2015 6:49 PM   Subscribe

I'm a brand-new grad of a web developer bootcamp and so am just starting out with JavaScript and Ruby. I wasn't the best in my class but I certainly wasn't one of the worst. I love coding and want so badly to become better at it, but I'm finding my bootcamp program's claim that 90% of grads are employed as programmers in 90 days to be very unlikely based on the two interviews I've bombed. Can there really be jobs out there for a bootcamp-grad junior programmer without a CS degree?

My immersive web development program was really fun and I built a bunch of apps that made me proud. We learned some Node.js, HTML/CSS, AJAX, WebSockets, Express.js, Sinatra, etc., but honestly, the required field of knowledge when it comes to coding seems so wide that I feel like I only learned .00001% of what's required to get an entry-level job, and our curriculum was really scattered and possibly ill-conceived. (We spent several days on Canvas, which we were told we'll probably never have to know but should just appreciate as a visualization tool, but an interviewer just asked me about apply(), call(), and currying a function, and I was like, "I have seriously never heard of those." I looked them up and they seem important.)

In class, we were assured that entry-level job interviews for JavaScript and Ruby would mostly be vanilla JavaScript/Ruby FizzBuzz-type questions, or we'd have to know how to write a function that reverses a string or whatever, but I was pretty skeptical. I feel like I was pretty correct to be skeptical since all of my interview questions have been so much more in-depth, and one kind interviewer acknowledged I'd probably have had to be a CS major to be qualified for a junior position.

For those of you who are programmers, are there really entry-level positions and interviews like the ones described to us, even front-end ones? I'm really concerned because I need to make money somehow and don't really have months to teach myself all the things my classmates and I were told we could easily taught on the job. There's so much to learn that I'm not sure where to start. I like programming so much more than what I was doing previously and don't want to give up, but I also want to know how realistic my goal of getting an entry-level coding position is, and if I should just be getting a temp receptionist job and coding my ass off at night. Have you or your company hired bootcamp grads? What did they need to know to get started?

Obviously, my mind's all over the place, but I'd appreciate any advice! It's even okay if you tell me you think I wasted my money. I have lots of programmer friends, but they're all so advanced they have no interaction with junior devs anymore, so I just want some real talk.

(If anyone wants to know which bootcamp I actually attended, feel free to MeMail me!)
posted by Yoko Ono's Advice Column to Work & Money (25 answers total) 52 users marked this as a favorite
There is a huge variety of jobs that fall under the "programming" category. I honestly don't know if there are any that hire people with the experience level you describe, but there may be. In the companies I've worked in, we require significantly more than that even for internships, but we're also probably not the kind of place you're looking at (or if you are, you may need to set your sights lower).

Think about it from their perspective. It's very costly to hire someone who, when you're being realistic, doesn't know enough to actually do the job (if the job is a full-fledged programmer position). So they're going to be basically subsidizing your learning by paying you while your productivity is very low, and also (if they want to have any chance of success) devoting a significant amount of other employees' time to help you and teach you. It's not a great deal for them, and honestly I'd be a little skeptical of a company that would hire a programmer under those circumstances.

That said, lots of programming jobs are more about what you know how to do than what your credentials are. And there are definitely jobs that you can get with no job experience, but you do need to be able to do the work and answer the interview questions. So if I were in your shoes, I'd probably take a non-programming job, ideally in a company that has programmers, and work your ass off in your free time to learn. Build lots of sites/apps/whatever kind of stuff it is you want to work in. Simultaneously, get to know the programmers and their managers, show them your interest, and talk to them about the projects you're working on. Hopefully you can eventually parlay that into a job, or at least you'll have built up your skills and portfolio enough that you can get a job somewhere else.
posted by primethyme at 7:21 PM on March 19, 2015 [2 favorites]

I don't know how easy it is to find these positions in your area, but there are many entry-ish level jobs in the tech industry where technical background is helpful but the job responsibilities aren't primarily writing code: sales for a developer-oriented product, a support position where you file bugs and write some documentation along with answering emails, blog content writing for a developer-oriented product, being a forum moderator or running social media for a tech company, possibly QA testing if you have a talent for it, organizing events for a tech company, and so on.

Those kinds of positions are probably better paid than an unrelated temp receptionist job, and you may be able to improve your development skills in the evenings and eventually transition into a developer position at the company - since they'll know your work ethic, and you'll probably be friendly with developers at the company who can help mentor you.

This is based on my experience being a non-developer in the tech industry. My entry level position was doing email support, and because I've worked for small companies/teams with helpful managers, I've grown into also doing bug reporting, content writing, documentation writing, managing a forum, managing social media, organizing events, and related tasks that fit under a job title umbrella of "technical writer and community manager".
posted by dreamyshade at 7:22 PM on March 19, 2015 [4 favorites]

My brother attended a bootcamp (may or may not be yours) and got a programming job afterwards. It wasn't immediate - I think he went to a bunch of interviews over a month or two - but the camp he attended had interview and resume coaches available that he said were really helpful. He bombed at least one interview.

I went the more traditional route of engineering to programming and system design.

It would be good to bone up on and demonstrate dexterity with algorithms. What programming language(s) you know are less important than being able to deconstruct problems and figure out how to incrementally build functionality. You may have frozen when confronted with something you knew that you didn't know instead of being able to keep thinking through it, even in general whiteboard-level pseudocode. Do you have a good understanding of what went wrong in your interviews?
posted by bookdragoness at 7:27 PM on March 19, 2015

I'm in NYC, where there are several web immersive boot camps. I've interviewed candidates straight from these programs, so I think I can share some perspective from the hiring side.

I don't expect a junior developer to know everything. I do expect a junior developer to ask questions and learn. You're going to make mistakes (I did and still do), but you should learn from those experiences.

When interviewing someone for a junior role, I'm looking for someone who can problem solve when diving into a specific task. You may not know every CSS quirk across every browser, but you are willing to learn. In the interview, talk about how you approach a problem -- break it down to the smallest parts. What do you do when you get stuck? Do you stare at the code or do you actively investigate forums, documentation, stack overflow? I'm more interested your problem solving ability than your technical knowledge.

I recommend aiming for roles within larger organizations where there is likely to be a better mentorship and learning program. I hear that the NY Times has hired several rounds of candidates from a bootcamp here in NYC. I assume they have an organization that allows for junior developers to be paired with more senior developers who can guide them as they grow.

Smaller companies may not have the time or resources to properly cultivate talent. They may also be looking for someone who has a range of experience but are only looking to pay the salary of a "junior developer".

I ultimately didn't hire anyone from a boot camp. I don't have the structure in place to properly groom them. I would do them (and my company) a disservice -- I realized that I needed to hire someone more mid-level.

Opportunities are out there, you just have the find the right fit. Don't be discouraged!
posted by tommccabe at 7:28 PM on March 19, 2015 [1 favorite]

Not a working dev, but I'm learning. I don't have any data for you about jobs. I do have one friend who recently completed a bootcamp and he's currently working part time as a tutor but still looking for real work. I've heard a few pieces of advice along the way which might be useful to you (or maybe you've heard it already).

1. Get to know people. Meetups? Conferences? Facebook groups? Network like hell. Everyone I've talked to who does this work and doesn't have a degree got their job from a friend's reference.
2. Build stuff that you can show to prospective employers. Work on an open source project maybe. Build a website that showcases your skills (doesn't have to be perfect or even useful, just so you can talk about why you went with a particular gem or library).
3. If you know there are particular companies hiring in your area, learn their stack. What database do they use? Do they use Angular? Node? Backbone? Rspec or minitest? etc. Learn those technologies before you go for the interview.
4. I would be looking for freelance work. This will build your portfolio and your chops, and get you a little cash.

Don't worry about whether you wasted your money or not. Just concentrate on getting by until you get the job. You will do it if you keep trying. It might just take a little longer than you thought.

If you're interested in talking to someone who might be in a similar place as you, learning wise, hit me up! I'd love to pair up on a project.
posted by natteringnabob at 7:29 PM on March 19, 2015 [1 favorite]

Response by poster: Do you have a good understanding of what went wrong in your interviews?

I guess mostly that my interviewers asked me to define things I hadn't heard of. I wasn't given problems to work out or anything, so I couldn't think aloud or show them my thought process.
posted by Yoko Ono's Advice Column at 7:40 PM on March 19, 2015

Hello, I recently completed a bootcamp program as well, though it was more narrowly focused than yours and I think that was beneficial for the students. I am now employed as a front-end developer, and I interviewed for a handful of similar jobs -- so these jobs are absolutely out there. Can you reach out to employed grads of your program (or better yet, the people running your program) for advice and/or networking?

Definitely keep working on your portfolio and skills too, and 100% do freelance work if you can get it, but I don't think it's unreasonable to keep looking for a job in your field right off the bat.
posted by sea change at 8:01 PM on March 19, 2015

My background is in math and I ended up with a one of those amorphous data scientist jobs, but I had a bunch of straight up developer interviews as well. I was literally asked to write a function to reverse a string, though it was in a phone screen. Apparently people do regularly fail at that point.

I did study for interviews and made flashcards. If you me-mail me, I can dig out the list of terms/ideas I had. There was a bunch of CS major-y stuff where I really only learned enough to understand a question, but probably not to answer it unless it was trivial. However, I think I was asked a grand total of one Big-O question (and it was O(n^2) or something obvious) and nothing else. There was some list of things you were liable to get asked about a language you've got on your resume and then there are things people like to ask about certain languages. (I'd bet "What is the difference between apply() and call()?" is a Javascript favorite.) You want to be able to answer questions about OOP concepts. I'm guessing it would behoove you to be able to blather on about MVC in the abstract as well if you're doing Ruby and Javascript.

That seems like a lot, but it isn't months of study. I collected lists of things to learn (from google and talking to people) and then spent a couple mornings camped out in the local coffee shop. I spent another two weeks or so before a big interview studying a bit each day (the only time in my life I've made a study calendar and stuck to it).
posted by hoyland at 8:03 PM on March 19, 2015 [3 favorites]

So, I literally just answered something along these lines here a few hours ago, but yes, there are jobs out there. I graduated from Dev Bootcamp in Chicago in September and found a job in January. I am getting paid pretty well and doing interesting, challenging work. Where are you? I've found that there are a number of companies who won't consider bootcamp grads at all, and others that are willing to put in the time with us. If an interviewer knows you went to a bootcamp and their response is to start grilling you on algorithms, that's a place where they aren't considering bootcamp jobs. I ended a few interview processes when it became clear that they weren't looking for someone with my skill set. You just need to find the companies that are willing to put in the time. If you're in the Chicago area, I'd be happy to chat via MeMail or to get a coffee and talk.
posted by protocoach at 8:05 PM on March 19, 2015

Keep applying. Remember that nobody is ever super great at interviewing for these types of positions, both as an employer and as an employee. You only need to find one job. Right now, concentrate on lining up as many interviews as you can possibly get.
posted by oceanjesse at 8:41 PM on March 19, 2015 [2 favorites]

Best answer: There absolutely are jobs for junior web devs out there, though it may take some time to land one.

How are you conducting the job search? I work in the tech industry, and I've seen a lot of people go through this process recently. Here is what I've seen successful candidates do (some of which you're probably doing already):

1. Get a LinkedIn account, update it and make it look nice (good photo, interesting summary of your career goals, links to your Github and code projects).

2. Write an excellent resume highlighting your code projects, education at the bootcamp, education elsewhere, and previous job experience (tailor for length and/or relevance to the tech industry).

3. Polish your Github account, put up a picture and an email so that people can contact you.

4. Polish your code projects and put them up on Github, so that people can look at code you've actually written. Refactoring old code is an easy way to get more practice and make your Github account more visibly active on the little green calendar chart.

5. Create a portfolio website, separate from your LinkedIn/Github/etc. Github Pages conveniently offers free hosting if you want to use that. This is your project showcase - describe your code projects (3 is good, more if you have them), explain what tools and technologies they feature (e.g. "built in two weeks using Node and Express, with a focus on AJAX requests"), and remember to link to both the Github repos and the deployed apps. Your portfolio website should also have a photo of yourself, a bit about who you are and what you're looking for, and of course links to your Github/LinkedIn/resume/email/etc. Make it easy for someone to contact you if they like your portfolio.

6. Create and practice your 30-second pitch about who you are, where you're at, and what you're looking for. "My name is W, I have a background in X, I decided to learn web development because Y, and going forward I'd really love to work in Z." Make this sound natural and authentic and on the tip of your tongue, so that when someone asks you "Oh, what brings you here?" you have an answer ready.

7. Go to lots of tech meetups and project nights, as many as you can stand. Attending at least 1 event per week is about right. If you're in a big city, should have lots. These events are a great opportunity to use your 30-second pitch. When you're there, ask ask ask as many questions as you can about the interview questions you didn't know, practice future interview questions, how to do something in a code project you're working on or refactoring, best practices, job openings, etc.

8. Follow up with people you meet at meetups. Email them within 24 hours of meeting them. Thank them for their time, send them your portfolio site, and ask them to keep you in mind for future opportunities.

9. Does your bootcamp have any job search support? If not, can you email past graduates and ask them what their job search was like? Follow up here too.

10. Keep coding. Practice more stuff, put it up on Github, add it to your portfolio, and you will almost certainly get better in the process. If you don't already have ideas of your own, there's plenty of "standard" projects you could build just to practice: a blog, a todo app, a music catalog, a twitter clone, a reddit clone, a photosharing site, a dating site, an ecommerce site, etc.

11. Learn about CS topics and practice lots of interview questions. You can find excellent practice questions at Interview Cake, tech blogs, and to some extent on Stack Overflow. For CS topics, Khan Academy's CS course is amazing. Big O notation, sorting algorithms, and trees are the topics to focus on.

12. Do code kata (small challenge problems). Code Wars and Project Euler are great for this kind of targeted practice. Non-coding-specific brainteasers such as at Braingle are good too. Study other people's answers after you've given it your best shot and compare their strategies to your own.

13. Practice whiteboarding code problems from Interview Cake/CodeWars/Project Euler/Braingle in addition to just solving them by writing code. Whiteboarding is a very specific skill that you need for a tech interview. You have a whiteboard and a marker, but no computer or google or other resources. An interviewer is not necessarily looking for you to get the right answer, but they do want to see evidence of your thought process. Whiteboarding involves a lot of saying things like "Well, let's try starting like this..." and "Hmm, that seems to be a dead end, so let's try to look at things from another angle..." You can also draw diagrams, describe the problem in words, and write actual code to solve the problem.

14. And finally, apply to lots of jobs! Aim to apply for 10+ jobs per week. As many as possible should be "warm leads," meaning you spoke to someone at a meetup event about the job, as opposed to "cold-calling" where you apply out of the blue to a company where no one has ever heard of you before.

That's a lot of stuff to do! I think if you have the time to follow through on most/all of these steps, you have a great chance of finding a job within 3-4 months. You could consider doing contract work at Elance or Odesk in the meantime to tide you over and get you more experience at the same time. Honestly, I would not recommend getting another part-time job if you can possibly afford it, since job hunting as I described it above takes enough hours to be its own full-time job, plus you are likely to start forgetting your hard-won coding skills as the mundane details of daily life take over. You have a pretty good roadmap of what you need to do in order to succeed in the job search, so I'd focus your efforts on that.

Good luck!
posted by danceswithlight at 9:51 PM on March 19, 2015 [40 favorites]

A lot of good advice above. I'll only add a few things:

- Learn jQuery

- Read this: Essential phone screen questions. It may (or may not) be a bit advanced for you, but it would be good for you (or anyone) to build your knowledge of them.

- Nthing a portfolio. When someone is going through a stack of starting level resumes, a link to show off stuff you've done will make you stand out.

- Now is when many companies are beginning to seriously recruit for Summer Interns. Some companies are only interested in (say) 3rd year college students. But not all. And some companies use their intern program as a source for full-time hires. So it couldn't hurt to surf some corporate job-type websites for companies in your vicinity.

Good luck! And - you don't have to learn *everything*. You're better off knowing several things really well (and having an illustrative site in your portfolio) than having a shallow familiarity with everything out there. We have a saying at my company: Code talks. Bullshit walks.
posted by doctor tough love at 10:22 PM on March 19, 2015 [2 favorites]

Just as a data point, I completed my BAS in Internet and Web Development last year at a large state university. Classes covered Canvas. I have never heard of apply(), call(), or currying a function, either.
posted by getawaysticks at 6:05 AM on March 20, 2015

I'm a self-taught front-end dev. I've been working for almost a year in a non-junior role. I would attribute my success to the fact that I had a good portfolio and solid Javascript fundamentals which I was able to demonstrate in interviews. I got those fundamentals from reading books and articles; specifically Professional Javascript for Web Developers and other resources that you can find on /r/learnjavascript.

I posted this link on a recent similar question, but for an overview of stuff you should know to get a job, I found this video helpful: What Are The HTML5 Skills Employers Are Looking For? I like some of his other videos, too.

He says you should know:

1) JS fundamentals
2) An MVC framework (doesn't matter which)
3) A CSS framework (he says it doesn't matter which but in my experience SASS is by far the most popular)

It sounds like your JS fundamentals are lacking. IMO, instead of thinking you need an "entry-level" job and expecting them to teach you stuff, focus on filling in the gaps in your knowledge and projecting more confidence. It doesn't have to take months as you've already got a lot of foundation. There are plenty of working developers with no CS degrees who didn't attend any bootcamps.

I've participated in a bunch of front-end interviews, and YMMV, but we had candidates solve some pretty basic codewars type questions, asked them stuff about type coercion, variable hoisting, context, closures. These are all pretty standard interview questions.

Canvas is certainly good to know. If you've never heard of call or apply, you're going to get into trouble. See: JavaScript’s Apply, Call, and Bind Methods are Essential for JavaScript Professionals. "Function currying" is kind of esoteric terminology but it's also something you should understand. There are tons of articles with Javascript interview questions out there. If you work your way through a JS text none of this stuff will be foreign to you. Best of luck.
posted by ludwig_van at 6:54 AM on March 20, 2015 [1 favorite]

I would add that the term/role/job of "Front-End Developer" can mean a lot of different things to different people. On one end, people think that this is a person with design skills who can make and slice PSDs and get a CMS-driven website skinned and working. One the other end, someone might be looking for an employee to MAKE a powerful CMS that could generate a variety of dynamic websites with different themes, permissions, and page configurations.

Obviously, you know that the skills required to perform at a high level on either end of this spectrum are very different. You need to find the job that best fits what you are able to contribute or interviews are going to keep being wonky.
posted by milqman at 7:36 AM on March 20, 2015

I'm not sure that a bootcamp, absent other previous education or a lot of self-study, would be enough to land you a job as an actual developer at most serious or semi-serious tech companies. As you correctly infer, what you learn in a bootcamp—just due to the amount of time involved—is a small fraction of what you need to know to be a productive contributor to a development team.

However, it will get you your foot in the door for interviews. But I suspect you're "bombing" them because you don't have the required depth of knowledge in addition to what you learned in the boot camp, in order to compete with people coming out of 4-year CS programs (and really, people coming out of 4-year CS programs are still regarded as Barely Knowing Enough To Be Dangerous by more experienced developers). Software development is hard.

So I think you need to do some more self-study, maybe take some more courses (maybe audit a few as a non-degree student if there's a university nearby with a good CS program? you don't need to take the degree program, just take some of the courses, maybe something like Algorithms would help you during interviews) do independent projects that you can show to prospective employers, and keep learning.

The combination of having been to a bootcamp and a substantial body of independent work seems like it would be a lot more impressive than the bootcamp alone, and then if you can couple that to a transcript showing at least a few traditional courses with good grades (which you could put on your resume as 'Selected Coursework'), you'd get a lot more interest.
posted by Kadin2048 at 8:03 AM on March 20, 2015

Another employed bootcamp grad here. It would be interesting to know what the things they asked you to define that you hadn't heard of were, so as to be like, "Yeah, these people are not really interested in bootcamp grads" or "No, you should totally know what that is." Also, those things they asked you about that you didn't know about - do you know about them now? Use your interviews (even if you bomb them) as learning experiences.

Even when you're actually in the interview, if someone asks you about something you don't know, don't *just* say, "I don't know." Say something like, "I haven't heard of that before, is that like [concept that sounds like it might be related]?" Talk about how you would find out.

Also, you need to find companies that are interested in what you have to sell. Not every place wants bootcamp grad developers, and I suspect that a lot of the places that *do* want bootcamp grad developers got in on that a year or two ago (my company has three bootcamp grads including myself, but we've all been here for over a year and a half). Go to meetups and talk to recently-employed bootcamp grads and self-taught developers. Network your ass off. I know someone who got a job through pair-programming with someone at an informal project night. She is completely self-taught. It happens. It's hard, though.
posted by mskyle at 9:13 AM on March 20, 2015

How's your portfolio? If you don't have examples of work and can't answer questions in the interview, then you're in for a bad time.
posted by GiveUpNed at 1:01 PM on March 20, 2015

Another recently-employed bootcamp grad here. The thing I found most helpful in convincing employers to hire me was having a single, fairly large and complex project in my portfolio. (This was actually built into my bootcamp program, where the last two weeks of the program were mostly self-directed work on a capstone project). Having a single big project to direct people to was very helpful in directing interviews into an area that I actually had some expertise in, and being able to speak intelligently about the choices I had made in building that project showed that I was capable of bringing together a bunch of different technologies into a coherent web application. It also helped that my project involved integrating a couple pieces of tech outside of the basics of my stack, in my case that meant using mapbox with some custom javascript and rails code to manipulate information from the database directly on the map, and using a worker process to handle asynchronous geocoding of new database entries.

Feel free to MeMail me if you want more specific advice.
posted by firechicago at 1:52 PM on March 20, 2015

Response by poster: FYI, yes, I have a well-maintained portfolio site that highlights my projects, GitHub account, and LinkedIn account.

I bombed my latest interview by not knowing Big O notation. No boot camp grad would. I'd never heard of it.
posted by Yoko Ono's Advice Column at 3:52 PM on March 20, 2015

Response by poster: I do feel like this thread is fairly discouraging and I want to send it to my boot camp so they stop making "you'll get employed just learning this curriculum!" claims. Wish I could find a job doing something software-adjacent, but I am in my 30s and was having so much trouble getting even a receptionist job (I have an Ivy League degree, a Master's, and now this boot camp education plus several years as an employed writer and still haven't been able to get a job in years) that this boot camp was sort of my Hail Mary. So sadly it looks just really, really hopeless for me.
posted by Yoko Ono's Advice Column at 4:11 PM on March 20, 2015

> Big O notation.

I know a lot of this is a matter of opinion, but - unlike "currying" - Big O notation really is something every programmer should at least be aware of. It falls under Theory of Computation - you could read a book on it and bring yourself up to speed pretty quickly.

I have two degrees in computer science and over 30 years experience in the industry. I hate bringing it up here, but you may justifiably wonder what my qualifications are.
posted by doctor tough love at 4:12 PM on March 20, 2015

I mean, you don't want to find yourself in an interview for a developer role having to admit that you've never heard of Big O notation. So now that you've heard of it, brush up enough to talk about it intelligently.

That being said, I'm not sure what kind of role you were interviewing for, but I'm surprised if that topic came up in an interview for a front-end developer role. It didn't come up in any of the interviews I went on, and it would not come up if you were interviewing for a front-end role at my organization. However, Javascript methods like call and apply very likely might come up, and not knowing that stuff would be a red flag.

Don't get too discouraged though! It sounds like you may have just been unlucky with the interviews so far.
posted by ludwig_van at 6:47 PM on March 20, 2015

I have mixed feelings about the "bootcamp" programs but yes, this transition does work for some people. From what I've seen, usually people who come out of such a program become an "apprentice" and then a few months later, if things work out, become a junior developer. So maybe you're aiming one position too high for where you're at. I think the most important thing is to be honest with yourself and the people you're interviewing with about your experience level. Lots of companies would love to take on very junior people but if you go in to an entry-level software job interview at this stage my gut says you're going to be in over your head.
posted by deathpanels at 9:54 PM on March 20, 2015

Response by poster: I want to close out this thread by saying that I did find a lovely job with a wonderful mentor. The caveat is that I'm on a very low salary for a programmer, but it's a higher salary than would've been possible in my previous career and I can see it's the reason I was hired since the company can't yet afford a second full-fledged, experienced programmer. I get the opportunity to do something that excites me with a person who believes in my potential to learn and is happy to share her considerable knowledge, so I consider it a very fair trade (albeit one not everyone would make for very understandable reasons).
posted by Yoko Ono's Advice Column at 1:39 PM on June 6, 2015 [3 favorites]

« Older Batshitinsane conspiracy Sci Fi in the SyFy mold   |   Logos derived/influenced by state flags? Newer »
This thread is closed to new comments.