49 ms·
What I learned from spending 3 months applying to jobs after a coding bootcamp
- alexc05 10y agowell first thing - that code at the top can be simplified. function getDevJob(studying, hardwork, luck){ return study && hardwork && luck; } But more seriously - I actually really like point #2. I firmly believe that job interviews have a strong bias towards people with experience doing job interviews. Your "offer-ladder" seems to confirm that for me. It reminds me of that freakonomics article about how real estate agents get more for their houses because they wait longer for a higher offer. By getting the practise and being better at job interviews and NOT jumping at the first offer, you get a better overall rate.
- goldenbeet 10y agoAlso note that the "easier" interviews are from companies that are less competitive/less established. So their offers are going to be lower not because the candidate comes off as less qualified, but because they just don't have the money to pay their employees the 120K+ salaries. So that graphic is also misleading.
- throwawaysbdif 10y agoThis hasn't been my experience in general. Most of my hard interviews were at startups. To sound old and jaded, I think a lot of it has to do with the startup mentality "we only hire the top 0.0001% of coders " . Once you've been in the business for years you realize the fallacy of that thinking and try to hire good coders with a focus on finding people fun to work with. Most big companies I applied at had about half of the grilling and the rest of the interview was "culture fit"
- Declanomous 10y agoI'm a bit jaded about startups myself and I'm not even 30. The couple I worked in seemed like "we are so smart" cults, which drove me absolutely nuts. The people working there were smart, but their definition of intelligence was narrow-minded. I find it very unlikely that you are hiring the "best-of-the-best" if the vast majority of your employees are men under the age of thirty who attended a very specific list of colleges. Running a company is a team activity. I think there are too many sports metaphors in business, but if you've ever played a team sport you realize that the best teams are usually the ones with the players who play best together, not the ones with the most talented players. I could run this metaphor in to the ground, but the point is that hiring only the "best-of-the-best" is neither a credible claim nor a good methodology for creating a successful business. You might be able to do that when your company is 5 people, but it's probably much better to have good role players who are a cultural fit for your organization in the long run.
- pinouchon 10y agoWhile we're at it, the function name `aTypicalDay` is one of the poorest naming choice I've seen in a while. Is it typical or atypical ?
- palakchokshi 10y agowouldnt't atypical day be atypicalDay and a typical day be aTypicalDay? following camel case nomenclature the function name seems to suggest a typical day and is aptly named.
- deleted 10y ago[deleted]
- svachalek 10y agoIn camel-casing, a capital letter indicates the start of a new word. Therefore this is clearly "a typical day" while "atypical day" would be "atypicalDay".
- retube 10y agoI would interpret the former. Presumably the latter would be "atypicalDay"
- mighty_warrior 10y agoAll I could think about after that first image was giving the author a code review.
- grogenaut 10y agoAdvice I give at all levels is if you're getting bored at your job start interviewing again even if you're not going to take it because: you never know && you need the practice.
- sushid 10y agoLooks like your refactor could use a test or two :p
- alexc05 10y agoOMG - you're 100% right and I've already passed the "you're still allowed to edit or delete this post" time limit imposed by HN. This is going to be a black mark on my OCD coder's soul for the rest of time. A code typo immortalised next to my name. /sigh. There's a lesson for me... Never. Ever. Attempt to be clever on hackernews. Thanks for pointing it out. ... I wonder if HN mods would be willing to spare me this suffering. Undoubtedly a waste of their time.
- UweSchmidt 10y agoJudge and you will be judged :) Seriously, the original code is not too bad and probably what most people would write if the inputs and functionality of that function are only complex enough. "Hm, what else goes into isPrepared? Do I have to consider anything else before returning true or false?"
- dlitz 10y agoJust fix it in the parser. ;)
- goldenbeet 10y agoTL;DR: The barchart can be misleading. Increasing # of applications can decrease the rate at which they mature into offers. I like some of your points like get through to real people. That's an incredibly important part of landing a job. However I do have an issue with the graphic at the beginning. I think it's misleading, because you shouldn't really be applying to 200+ companies. When you take that kind of approach its like you're selling yourself short (not putting your best foot forward). Its like saying "I'll take anything, just please give me a job". It's also more difficult to actually show interest in whatever company you're talking to, which is a key part of performing well and ultimately obtaining an offer. So you end up showing 8 offers from 291 applications, but I would argue that by making so many applications, you are decreasing the rate at which the applications turn into offers. I can offer a contrasting viewpoint to this job search thing. When I was in school for Physics I taught myself how to program and started focusing on Web Dev. I ended up dropping out of school and decided to become a programmer. In that initial job search I applied to three companies in SF. (Companies that I was familiar with and legitimately interested in) and got offers from all three. That was two years ago and I've since applied to two other companies in Mountain View (I'm trying to move to an ML engineer position) and received offers from both as well. And like I said I think the difference between what our bar graphs would look like is due to the fact that my applications were much more targeted and my interest and motivation in the companies was much more apparent.
- blunte 10y agoI'm not surprised by this, neither by the methods and approach he employed nor by the results and education he received from his efforts. The fallacy that "programming" is just learning tools and syntax and processes has unsurprisingly led to an expectation that, in continuing fashion, one can just run through a defined routine and get a solution. In short, the whole thing is misunderstood, and thus the approach is all wrong. Whether in IT or business (or life in general), opportunity is more easily gained through human interaction - networking (but substantive, not superficial). Go to meetups on a particular language or stack or tool. Become involved in open source projects or communities that are centered around some shared interest. Get to know people, and let them see who you are. Then the jobs will come to you.
- 10y ago
- ubersoldat2k7 10y agoHow do you even manage this amount of information? A notebook can help but once you hit the 20 applications mark, it's impossible to know to which companies you applied for.
- Wilduck 10y agoI'm not the author, but I went through a similar process looking for a job when I moved to a new city. I had ~120 applications over the course of a month, with a surprisingly similar funnel at each step. Managing the process wasn't too hard. I simply kept a spreadsheet updated with contacts as rows, and columns with dates for every step of the process including first contact, second contact, phone interview (s), coding challenges, on-site interviews. However, you're right when you say "once you hit the 20 applications mark, it's impossible to know to which companies you applied for." Early on in my application process, I wasn't applying to nearly enough places, because I wanted to hear back from someone before moving on to the next. A good friend of mine gave me the advice "You should be reaching out to so many people, that when you get a response, you'll need to go back to research who it was from." It's a weird mode to operate in, but once you realize that as a new-ish dev the process of getting a job is very much a funnel like the one in this post, it's a strategy that makes a lot of sense. I would highly recommend anyone looking for a job to follow the advice in this article, it matches very closely with my experience. Especially resonant were the points about making contact with real humans, and also to push tons of companies into the pipeline.
- ipince 10y agoUse a spreadsheet.
- gp3gp3gp3 10y agoTrello
- jaggederest 10y agoThis is what CRM tools are for. Treat it like a business.
- seangrogg 10y agoAsana. No seriously, that's what they were using at HR when I graduated.
- leecarraher 10y agonot sure how much trust to put into data from freecodecamp.com a company that despite it's name, seems to sell codingcamp products.
- abeyer 10y agoSource? I thought that they were all open curriculum and didn't even have a paid program. It's been a while since I looked at it, but I've recommended it to people as one of the better sources of actually free content, and not just upsells, and would like to know if that's not the case anymore.
- deleted 10y ago[deleted]
- RUG3Y 10y agoThey don't sell any products, they just offer free curriculum and forums that anyone can follow. As part of the curriculum, they pair students with non-profit organizations that need code.
- Practicality 10y ago3 months of applying? Wow. Seems like whatever he got was well-earned to me. I really stick to projects too, but this is massive. I just don't have the time/patience for 3-months of searching while I am currently working. Kind of makes me think that the market is selecting people who have someone else supporting them so they can do all this interview research. Seems backward in my opinion. I keep hearing "interviewing is a skill too." Sure it is, but should it be? I mean, why are hiring managers looking for people who are good at pretending to know things rather than people who demonstrate real aptitude through getting things done?
- willhslade 10y agoConfidence is a proxy for competence, which, through the interview process, we are imperfectly testing.
- enraged_camel 10y ago>>Confidence is a proxy for competence I take it you've never heard of Dunning-Kruger effect. https://en.wikipedia.org/wiki/Dunning–Kruger_effect https://en.wikipedia.org/wiki/Dunning–Kruger_effect Or its opposite, Imposter Syndrome: https://en.wikipedia.org/wiki/Impostor_syndrome https://en.wikipedia.org/wiki/Impostor_syndrome
- caylus 10y agoJust because there are exceptions, and we have names for both the positive and negative forms of the exceptions, doesn't mean there's not a strong correlation overall.
- anonymoushn 10y agoIn the Dunning-Kruger paper, estimated ability is positively correlated with ability.
- dood 10y agoAre people in America seriously getting offers of $120k with no degree, no experience, and not even a side-project? That is mind-blowing. In London, probably the biggest/richest market outside of USA, that sort of salary is beyond what most experienced developers get, even some very good ones. I must be missing something here (some sort of bubble?) because I can't see how businesses can be profitable paying those sort of salaries to people who know almost nothing about professional programming. Either that or businesses in America are just waaaay ahead of Europe at turning code into cash.
- cwmoo740 10y agoIt's rare. And a lot of the businesses that are paying these salaries to new developers aren't profitable, they're running on VC money. In my experience $120k is in line with a developer with a 4-year CS degree and 1-2 years of work experience and maybe some OSS work.
- PaulHoule 10y agoFor one thing if you're experienced you get a much better response rate than he got. I hear back upwards of 60% when I send resumes to positions I am a good match for on job boards.
- gxespino 10y agoYour personal experience as someone hiring developers or yourself looking for new jobs? I think a candidate with a 4 year CS degree and 1-2 years work experience should probably command more than $120k. A lot of it depends on how well you can sell yourself, IMO.
- linkregister 10y agoWhere? Also, are you assuming this work experience is at Facebook or Twitter? Most developers in the U.S. work for consulting firms or non-software-core businesses. The fact of the matter is that $120k is the median salary for software developers in the SF bay area, the highest-paying region in the U.S.
- Slackwise 10y agoThis whole hardcore quizzing and testing during interviews has to go. As far as I can see, all it does is create selection bias for people who memorize things or like to practice interview questions. Maybe that's just me being too old for that kinda' crap.
- throwawaysbdif 10y agoI have been interviewing the last couple months and have the same opinion. I've been coding for years and have some pretty complex stuff up on my GitHub. I quickly found out that nobody looks at your GitHub, maybe 10% max. didn't matter that I had code from two weeks ago that did complex segmented locking on a concurrent hashtable. still got asked "what is threading" level questions at every place. After botching my first spate of interviews to stupid trivia I gave in and and read through a bunch of CSCI 100 course notes and "beginners guide to language x". My performance improved significantly. Ironically the most useful tutorials were the most basic "write a string to a file", as I had forgotten the classes for opening raw files in my three languages of choice (since nobody in their right mind has any business using those classes in a well designed WebApp). Doesn't matter that I could look it up in 5 minutes, they want it on the whiteboard with no googling. It's really easy to game such interviews as they require very little domain specific knowledge. If you say you know Cassandra or MVC, they'll just take your word for it... as long as you remember the classes for opening a raw file in r+w mode
- steve-howard 10y agoI'm not shocked that nobody looks at your GitHub. Reading other people's code takes time and energy that a lot of people aren't going to spend if they have a ton of candidates to sift through.
- throwawaysbdif 10y agoI'm not too surprised either, but I marvel at the amount of time wasted preparing and asking all the stupid questions when they could just look at my code for 5 minutes. Like, the main file in one of my libraries clearly uses concurrent locking, it even says so in readme.md . These were all last round on site interviews and we spent maybe 30 minutes of 2 devs time going over pointless stuff when they could just skim 200 lines of code. I think it's just that they have a process built up over time like "interview process.doc" and the devs don't want to make any waves going off script
- forgetsusername 10y ago>the most important thing you could be doing at any point is studying and preparing. "Most important"? Have fun with that. Life is too short to spend time memorizing the answers to over-the-top tech questions for some chance to work for a company no one has heard of (and isn't producing tech near the scale of interview knowledge they require).
- shortstuffsushi 10y agoOne thing that I think is worth noting here -- this guy isn't from a university where he would have learned this, and likely hasn't spent a lot of time using or understanding data structures (unlike "the rest of us"). He's just out of a code camp, studying these sorts of things make sense in that situation. I'd hope someone more experienced wouldn't need to.
- rtets 10y ago"At Hack Reactor, we’re trained to mask our inexperience. In our personal narratives, we purposely omit our bootcamp education." Assuming most people who do bootcamps are changing careers, how do you explain suddenly becoming a developer after years of another career?
- deleted 10y ago[deleted]
- prh8 10y agoalso: > companies automatically categorize us into junior developer roles in other words, correctly categorized
- iamatworknow 10y agoThis was the part I didn't understand at all. You go through a CS program for 4 years or more and end up as a junior developer and that's fine, but if you go through a 12 week coding bootcamp you're somehow more qualified and shouldn't be "benchmarked against junior developers"? I do realize I'm making an assumption that there was no prior CS experience before the bootcamp, but isn't that the crowd they're targeting?
- jeremymcanally 10y agoThat's because that's what a lot of these bootcamps sell. I've interviewed several grads, and while it's not universal, many of them literally tell their graduates they're going to be better prepared for the Real World™ than their college educated counterparts. Almost like, "You'll be better than a CS grad. All they can do is explain and apply the fundamental thinking process behind all this 'engineering' crap. You, on the other hand, will be able to select elements based on their CSS class. Way more useful."
- iamatworknow 10y agoLooks like this author fell for it. I also don't mean to typecast anyone, but the author's profile on that site reads, "Full-stack dev @Radius, ex i-banker, @HackReactor grad, @UCBerkeley," so perhaps he thought his prior experience in an unrelated field or his alma mater should've helped him get a leg up over other entry-level devs. Again, I don't mean to judge since my path to software development was also non-standard, but my first gig paid about $30k/year and I was grateful to even be given the opportunity with my inexperience.
- deleted 10y ago[deleted]
- ericmcer 10y agoIs it still a huge deal to have an encyclopedic knowledge of data structures and algorithms? This guy was applying for jobs doing React/Node, which is what I do, and two years after school I cant remember all the details of the sorting algorithms. Would it be so bad to tell the interviewer that if I do anything other than call browser APIs to sort data I am failing at my job and wasting time?
- brianwawok 10y agoYou can go that way. I find it very unlikely the person interviewing you would "see the errors in his ways" and go "ok you are right, dumb question". It is a human flaw that when we interview, we project. If we are really good at X, we want to deep dive on that topic. Perhaps it is important for the job. Perhaps we are just trying to show off to a candidate. Who knows. I know I am a fullstack guy, but light on React. If the interview before me was a webdev and asked you a bunch of React questions, I could not add anything of value there. So I would poke around algos and linux and testing and CD and all of the other things I know about, to see where you fall. Not really to show off how leet my algos knowledge is... but I personally would rather hire a guy who knows big O, all things else equal. I do doubt most jobs are so specialized you only need 1-2 frameworks, and nothing else. Knowing what memory is isn't a terrible thing to understand for any programming job...
- jaggederest 10y agoFWIW I've been doing this for over a decade and the number of times I've actually had to care about sort algorithms, balancing red black trees, or that other nonsense is basically only in interviews and only occasionally. I say as much when people try to pull that stuff on me now. There's a copy of TAOCP on the shelf for a reason, if I need to know a good algorithm, Mr. Knuth's are certainly better than mine.
- seangrogg 10y agoIt's still a pretty big deal to know how Big O for time complexity (space complexity less so) and how to write algorithms that optimize for such. That being said, I've never had to write anything much more complex than a Binary Search algorithm for an interview as far as DS&A goes. If I were being interviewed I would have no problem taking advantage of any standard APIs I would expect to have available to me, which includes browser APIs if it were a front-end role. Why waste valuable interview time writing a sorting algorithm instead of just using .sort()?
- nogbit 10y agoWow, instead, get 100% response rate from only the 5 jobs one should really apply for because they have a personal story to tell that is a great match for the work being asked. I've done that twice. Throwing your name against the wall results in a whole lot of wasted time. You got some offers, great, but next time be picky!
- seangrogg 10y agoYou can typically afford to be picky (or have jobs apply to you) once you have a notch in your belt.
- gxs 10y agoGreat article. The only part that I hesitated with was the part about getting through to real people. After reading a post like this, not sure how hiring managers (or their team) are going to feel about getting inundated with emails from candidates. After all, that exact use case is why we have recruiting departments to begin with. I would tweak it and say use your network to get in touch with real people. The effects of getting a million emails from candidates might be blunted a bit if they are coming from someone you actually know.
- _petronius 10y agoMy sense is that it's just a good way to annoy people whose job isn't hiring. At best, you're risking annoying someone who is busy (and your email being deleted with no reply), at worst, you're actively penalizing yourself if you are demonstrating that you aren't willing to go through the standard hiring process that the company uses. (For other terrible ways that job applicants try to "stand out", Ask A Manager is a veritable goldmine[0]). [0]: http://www.askamanager.org/2013/06/a-job-applicant-stopped-by-with-a-plant-and-candy.html http://www.askamanager.org/2013/06/a-job-applicant-stopped-b...
- patricklynch 10y agoThe fact that his response rate when from < 5% for "applying the right way" to 22% for "maybe you upset a hiring manager" suggests his new approach, in spite of your reservations, is better for cases where you don't know anyone who can give you a warm introduction to a given company. If anything, assuming most companies have an 'employee referral' program, emailing a random non-recruiter may have the additional advantage that, for no cost to you, someone at that company becomes incentivized for several thousand dollars to lobby for you.
- seangrogg 10y agoThis is actually a very good point. Having an incentivized advocate really skews things in your favor and many companies have such programs in place to bring in new hires...
- Wwhite 10y agoAt least only 2.8 percent of the companies he contacted were interested in hiring someone whose only genuine reason to be interested in software development is the salary. Now I remember why I've gravitated towards sysadmin rather than dev, and avoid the big tech companies and their cult of overpaid mediocrity.
- exolymph 10y agoCompanies only care about your passion for your craft insofar as it affects your willingness to work overtime for less than you're worth. (That's a slight exaggeration to make a cynical point, but not far from the truth.)
- gxespino 10y agoHow did you infer from his post that his only genuine reason for becoming a developer was due to salary?
- Wwhite 10y agoIt is just an inference, for sure, but I reread the post, less angry, and imagining the author was a student I respected; It still comes off a bit crass, especially these two quotes: "A less-talked about part of the bootcamper’s journey is what happens after you graduate — when you’re searching for that six-figure developer position." "As I got more experience, I effectively “leveled up.” I became capable of completing interviews at companies with higher hiring bars. This is illustrated below as a linear correlation between the number of weeks I was into the process and the base salary I was offered." At the same time, if I imagine the author as a (highly organized) co-worker, seeking a better salary, I have a bit more respect for the legwork he has put in (although it is highly unlikely anyone with a full time gig would have the time for it). It remains unclear whether salary was the author's only reason to become a developer; there is only the absence of counterevidence. I would definitely feel uncomfortable hiring or working with a junior employee who attempts to "mask (their) inexperience", even during the hiring process.
- TorKlingberg 10y agoFirst: Good job on the author! I don't think I could make 300 application in a three months, and I am fortunate that I have never needed to. This is impressive determination and focus, and it paid off. Second: Wow, programming is becoming a commodity. This is literally 1) Learn the latest trendy framework and nothing else, 2) Study to the test, 3) Interview well. Either the market will be flooded and salaries for generic JS devs will crash, or strong programmers need to find a way to differentiate themselves that cannot be copied by anyone in 2 months.
- seangrogg 10y agoI'd argue that if strong programmers can't find a way to differentiate themselves from weak programmers in 2 months then yes, programming (from a hiring perspective) has become commoditized. That being said, we're currently in a time where most of the "development talent" that we have actively employed are working on little more than glorified CRUD applications. The few that are working on more specialized tasks tend to be safer from such commoditization.
- TXV 10y ago> strong programmers need to find a way to differentiate themselves that cannot be copied by anyone in 2 months they are already doing that with machine learning.
- krosaen 10y agoI'm happy for this guy, and there are really good tips in here for managing an application funnel. Like others, I'm surprised offers north of 110 are possible given his experience, and can't help but bristle a bit at him being a self described "full stack" developer when it appears he's a front end developer (does rails really count as being a backend engineer?). But he worked exceptionally hard at the process (guessing having applied to 10x the places a typical engineering grad does?), and also has a strong background in business from a reputable university. For some jobs, especially at startups, knowing how to understand the business problem and deliver results can be really important. The challenge isn't the tech, it's combining just enough tech [1] with essentially being a product manager too. [1] learning that "just enough tech" is not easy, and it's clear he worked hard to master a lot of material. It's just that many of us have been working that hard for many years and likely have more expertise / ability to learn new tech fast than can be gained by anyone in the course of a few months or a year; hence the initial surprise
- sfaf 10y agoWhy doesn't rails count as a backend engineer? Would you also not count someone who works with Django as a backend engineer?
- krosaen 10y agoI would definitely distinguish between html / css / javascript and server side application code, be it in ruby or python, I just didn't think working on the server side application logic completed the "full stack". To me full stack means you are into the systems a bit too and would be capable of setting up the stack itself (and perhaps enhancing it, or setting up custom batch systems), not just working effectively within a larger space provided by the application frameworks. But perhaps I just have the terminology wrong? Full stack developer = someone who works across the application stack, and I'm thinking more of "systems" or "backend" engineer?
- sfaf 10y agoYes, I do feel you have the terminology wrong. I consider myself full stack and I work with Rails, Django, etc. I have interviewed with many companies with the title "Full Stack Developer" and most of them have not expected the type of experience you are talking about. I think you are talking essentially about a Systems roles. When you are full stack there's usually an assumption that you are "better" on one side of the stack and won't be strong at everything. So a back-end focused full stack developer would be better at the things you are talking about while a front-end focused full stack developer would be much stronger in Javascript / CSS. The main thing is that you understand how an app works end to end and can contribute / fix bugs across the stack.
- scarface74 10y agoFor some strange reason people hate recruiters, but during my most recent job search - a month ago - I worked with seven recruiting companies. I was submitted to 15 jobs after filtering for commuting distance, technology, salary requirements. First noticed that I filtered based on salary. Most companies don't divulge salary ranges but recruiters know that up front. Out of the 17: 2 - positions already filled before I started the process 1 - after further investigation, the technology stack didn't meet my requirements 1 - had qualification I didn't meet 10 - companies that wanted phone screens 8 - phone screens 3 - in person interviews 3 - offers All of this in only 2-3 weeks. There is some overlap and no company out of the 17 stopped the process (submitted -> phone screen -> in person -> offer). I either stopped the process after accepting an offer, the job req was put on hold, or the position was filled when the recruiter submitted it. Two points. First, none of the submitted resumes disappeared into a black hole because I was using a recruiter. I knew my status for each job. The second point is that I'm no one special, I know plenty of developers that had the same experience. Someone else asked how do you keep up with all of the applications - a spreadsheet.
- talmand 10y agoMy impression has always been the spammy feeling of it all when someone is not seeking employment. The apparent never-ending "would you or someone you know be interested in this position" spam that developers get. Personally, I don't mind it at all but I understand why some might. As for the company side, I have directly heard from many a company that they don't like dealing with recruiters because of the cost involved. But then, it seems it has become necessary to many job seekers because experience suggests that if you want a response from a company about a position you must go through a recruiter.
- scarface74 10y agoI turned off alerts on LinkedIn when I change something on my profile and I don't post my resume online. I also only work with local companies that have been in business for a while. I've found a few recruiting "companies" that just put up a WordPress blog and the footer even says "powered by WordPress". I don't respond to those at all. I have 26 local recruiters all from different companies in my contacts. My shortest time from starting the process to having an offer is 4 days - from a Fortune 10 company. My longest is three weeks when I was being very picky about what technology I wanted to use.
- sakopov 10y ago3 months of boot camp and we call ourselves "engineers" (not this guy. I'm generalizing). I can't even begin to imagine what licensed engineers feel like when they read stuff like this.
- seangrogg 10y agoIt's a common thing in the field. My title was changed from Web Developer to User Experience Engineer, despite my groaning otherwise. Most junior developers enjoy the title inflation for a few months then start to realize it may have been conferred a loosely.
- enraged_camel 10y agoAt my company we make a clear distinction between developer and engineer. The former title is for juniors who are mostly just writing code, whereas the latter title is reserved for senior team members who demonstrate solid system design and engineering skills.
- VLM 10y agoHonestly, isn't that an unimaginably huge investment of time and effort? Wouldn't it be easier and cheaper, more educational, and maybe faster to just create a startup and get aquihired? I'm not in the market now, but that's my plan for the next time I'm looking. Its kind of a level up from merely registering an account at github. I'd be dealing with business acquisition people instead of a role-mailbox in HR that's piped to /dev/null anyway. I don't really want to move to CA and certainly can't afford it without a huge hit in the standard of living. However... if someone bought goofy-idea-by-vlm.com for two or three million bucks and an aquihire job in CA, then I still don't want to move there, but at least I could afford it if I absolutely had to.
- sfaf 10y agoNo it's definitely not easier to build a company that exits (even an acquire) than it is to get a job at a tech company that pays 100K.
- cagataygurturk 10y agoSo whoever hired the guy should feel bad. He explains the strategy to boost his payroll, he was hiding the bootcamp he was attending and he was showing himself as experienced dev. And also why would you hire someone if 300 other companies were not interested in that person? Ironically his lack of experience shows itself even in the first fancy function he writes on the blog post. Would not this unnecessary if block be a red flag in a coding interview? I am sorry to see this type of people in the industry and I am sure I would do the best to not to let such people getting hired in my teams.
- vibrato 10y agohow could a company feel bad?
- seangrogg 10y agoBecause companies (at least corporations) are people according to tax law, silly. =)
- to3m 10y agoI always read that sort of if block as the mark of somebody who's been round the block a few times. Because they know that one day you'll want to place a breakpoint on one case or the other, and they know that one day they'll want to know what the value of the condition is before it's used, and one day they'll want to put some logging in, and so on - and they know they won't thank their old selves for making that harder. This sort of hard-won experience is how you get the high salaries, you know...
- cableshaft 10y agoWhile I agree it's often advantageous to set a local variable instead of just immediately returning an expression for breakpoint reasons, there's really no reason to have that if statement in there instead of just returning the local variable, and I think it reads poorly. It's trivial to add the if statement if it's truly necessary in the future (like if you need to evaluate the variable beyond simply whether to return true or false).
- ARothfusz 10y ago> Coming out of Hack Reactor, my weaknesses were data structures and algorithms. ... > At Hack Reactor, we’re trained to mask our inexperience. In our personal narratives, we purposely omit our bootcamp education. I fail to see how they prepared this student for a career in software development. Sounds like they get a Masters in technobabble.
- nanodano 10y agoI had the same thoughts. Programming is nothing BUT data structures and algorithms. Being weak in those two areas basically means you are weak at programming. He also talked about how he didn't like they immediately equated him to a junior dev when realizing he only had bootcamp experience. IMHO, a bootcamp is essentially like taking one elective at university on making web apps.
- dwaltrip 10y agoUnderstanding abstraction is more essential to programming than data structures and algorithms.
- zengid 10y agoIs anyone else bothered by the code at the beginning of this article? Simply returning the expression would have had the same effect, ie: function getDevJob(studying, hardWork, luck){ return studying && hardWork && luck; } I know that it might not make the code readable to novice javaScripters, but it bothers me anyway..
- Humdeee 10y agoI'm more bothered because it's becoming "so clever" to put everyday life activities into a function. I saw code written in chalk on a sidewalk billboard at the door of a coffee shop yesterday. No, I will not reciprocate that cringe and verbally call a function to order my coffee because the barista learned Hello World the previous night.
- tnecniv 10y agoBecoming? It's been this way since I first started hanging out in internet tech circles (eight years, longer I'm sure).
- bhntr3 10y agoYes. It's a rhetorical device. And some could argue that code is also a rhetorical device. But the only argument an if else block that returns true or false based on a boolean makes is "I'm not very good at this"
- Chromozon 10y agoI immediately picked up on this, too. From the code I've seen, novice programmers tend to do this a lot more often than someone who has been programming for a while. On a similar note, another thing novice programmers do often is rewrite min and max using if-else.
- badthingfactory 10y agoThat's not even the biggest problem with this method. The name is totally wrong.
- lllorddino 10y agoI just hate how these "bootcamps" are only in it for the money and then they have the audacity to tell their students to LIE on interviews. How about you actually pick a language YOU love, make projects, improve. Node.js LUL
- blister 10y agoThat seems a little bit extreme, in my opinion. I'm writing the curriculum for a full-stack web developer bootcamp that we're launching in the early part of next year. We're all "kind of" in it for the money. I have to support a full-time teacher salary for three months, administrative overhead, software/hardware licensing, curriculum development, and have enough left over to make it worthwhile to continue teaching these classes in the future. But we're all driven to fill a need that we see in the market (not enough engineers/devs available) and most of us perceive the shortcomings of traditional formal education and think we have an approach that can improve things. As an example, I've been the lead engineer / director of engineering for the past five years and have realized that all of the junior engineers that we hire out of college generally take 2-4 months to get spun up on regular software development practices. We've got to teach them version control, team work habits, peer reviews, requirement solicitation, design document writing, etc. And all of those skills are on top of our industry-specific requirements. I'd much rather hire someone that was passionate enough to pay for a bootcamp, wants to be an engineer, and has learned enough to start contributing fairly quickly. And while we're going to be coaching our students on how to kick ass in interviews, we're certainly not going to advocate lying. We're going to focus on confidence, proper responses for things they don't already know about, and even get in to the "submitting your resume" process. Don't be so cynical. Computers have only been an integral part of everyone's lives for the past 15 years or so. The entire world is trying to figure out how to train people how to be productive members of a post-labor society.
- kazga 10y agoWhich university doesn't teach version control, requirement solicitation and design document writing in a Software Engineering class or similar?
- dmitrygr 10y ago> A study by Triplebyte has found that bootcamp grads are weaker in these areas than computer science grads. Really?! Who'da thunk? > At Hack Reactor, we’re trained to mask our inexperience. In our personal narratives, we purposely omit our bootcamp education. Hm... > Why? Otherwise, companies automatically categorize us into junior developer roles or tag us as “not enough experience.” And you think that after a few weeks of bootcamp "education" you're anything but?
- Sorry_Rum_Ham 10y agoI mean, call it what you will, but a lot of these people are getting offers, man. Good ones. Which is more than I can say for myself with my comp sci degree and two years experience. Although my location is likely to blame for that.
- thesimpsons1022 10y agoto be fair many of them go to berkeley...
- logfromblammo 10y agoMore than I can say for my BS CS plus 17 years. As I have had 7 different jobs for 12 different employers (due to mergers/acquisitions, by the most generous count), and have needed to run the entire interview gauntlet all 7 times, my primary career goal is no longer to earn more money. It is to never have to do another effing software-industry interview, ever again. But damn. For $120k/year, in the region where I now live, I might just put Expo2 to whiteboard one more time. I get tired of justifying my own existence to people who are only pretending to care that I am not actually a human-form automaton to crank out code. In short, the software-industry interview has always been stupid, but it has also become increasingly arrogant and rude. Is it really worth it to put up with the crap-on-you parade for a few more measly dollars in the paycheck?
- xiaoma 10y ago>"my primary career goal is no longer to earn more money. It is to never have to do another effing software-industry interview, ever again.: I feel exactly the same way, even though the existence of those interviews is probably the main reason I was able to get into kinds of companies I did.
- Rainymood 10y agoOn a related tangent, this is why it is so important to have a so called "Emergency fund"! An emergency fund is a little bit of money (often 1-6x average monthly expenses) such that if you get canned you can survive for 1-6 months without having to work so you can focus on applying for jobs and getting a new job without having to stress when your next bill is due. I agree that 6 months living expenses is on the high side, but make sure to get at least >1 month of savings in ... make this a priority! I would argue to even do this before paying off your student loans. Why? Because this is such a 'small' sum of money which can really save your ass in the long run when something DOES go wrong. And if every month has a certain probability p of going down the shitters and you approach it like a geometric distribution then its a simple probabilistic (near) certainty. Remember this: emergencies come unannounced (else they wouldn't be emergencies). Get your emergency fund up and running !!
- ThrustVectoring 10y agoDepending on how often you expect to need an emergency fund and what the relevant interest rates are for illiquid saving (eg: paying down student loan debt) and unsecured borrowing, it may make more sense to have your emergency fund in an unsecured line of credit or credit cards. Example with made-up numbers: Suppose you spend $2000/mo, you have an unused line of credit of $10000 @ 10%, your student loans are at 5%, and you are taking home $4000/mo. If you have an emergency that costs $2000 that hits your line of credit, that ends up roughly being an extra month servicing $2000 of debt at 10% instead of 5%. If you keep $2000 in cash instead of paying down student loan debt, that ends up meaning you service $2000 of debt at 5% instead of paying it down. These are roughly the same thing, so you wind up ahead if the LoC is sitting empty ~50% of the time. Granted, these are much more favorable numbers than typical use of credit card debt, but the point remains - if you have access to credit on good terms, and you won't need it often, and you have good illiquid returns on excess cash, you ought to take a look at using credit to handle emergencies instead of cash.
- nikanj 10y agoMake sure to be diligent in checking the terms for that LOC. Many banks reserve the right to cancel it if there's substantial change in your financial situation, e.g. if you were to lose your job. Make sure your emergency fund remains accessible if you get into an emergency.
- jsonmez 10y agoWould love to interview you for Simple Programmer, YouTube and podcast: http://YouTube.com/simpleprogrammer http://YouTube.com/simpleprogrammer
- bluedino 10y ago>> I applied to 291 companies, did 32 phone screens, 16 technical screens, 13 coding challenges, 11 on-sites, and received 8 offers. How much time would that take? Figure 15 minutes per company - 4,365 minutes, or 72 hours. And that's time just spent finding the company, changing around a cover letter, and then emailing it and responding etc. 32 phone screens? Let's say 30 minutes each, that's 960 minutes, or 16 hours of phone screens. Forget accounting for prep time, etc 16 technical screens, an hour or two, let's go 90 minutes. Again, not accounting for prep or anything else - 1440 minutes, or another 24 hours. 13 coding challenges. From experience companies want you spending no more than 1 day or 8 hours on a coding challenge, so 104 hours here. 11 on-sites. At least 2 hours each, 22 hours, not accounting for travel or anything like that. Also, I would have targeted applications to a lot less than 291 companies. I guess if I was trying to get my first job I'd be a lot less picky, but the 'ideal' company to work at can be few and far between.
- seangrogg 10y agoThere tends to be a relatively large number of initial applications that are more or less A/B tests - do companies respond well when I showcase my React project or my stint at a startup? Should I bother writing that I have Mongo experience even if they're not hiring for it? And so on. I haven't really applied for jobs since getting my first - just keeping communication open with recruiters generates more than I can keep up with all the time.
- jankedout 10y agoI can't believe he sent out that many solicitations. With an air of smugness, I'm glad I busted my ass in high school to go to a top CS school. I've probably sent about 30 resumes in my life and gotten phone interviews for all but one, offers from 15. Regardless, I'm glad to see that developers who go to bootcamp can get phenomenal salaries. I have a few friends going through them now.
- ThrustVectoring 10y agoYou probably haven't sent out ambitious enough solicitations. Like, if your response rate is that good for CS roles, you likely could have busted your ass for getting multiple competing offers from companies with gigantic piles of cash, or much more senior positions, or finding a business co-founder with good skills and connections.
- ryanmccullagh 10y agoI wonder how much Live Coding he had to do. I've been interviewing like crazy lately, and I've learned I hate live coding, and "thinking out loud". You're in a room with your laptop hooked up to the monitor, and 2 people are watching you code. Any small typing mistake or mouse movements can be a negative on your review. Live coding should die.
- seangrogg 10y agoI've done this twice and both times it was a pretty positive experience on the whole, but I made sure to be really open about stuff and ask questions where I thought they were appropriate. I would imagine the experience really comes down to the company, the interviewers, etc - but I figure if they're going to be watching me code it's now pair programming and I treat it as such. That being said, tech interviewing in almost all current forms sucks and we need a better method. As has been said for years now.
- evonsdesigns 10y agoI disagree. Companies need to know these people can walk the walk. Sure, I don't expect you to know all the spec details. Googling the spec or asking questions is fine. I had one interviewee that went through a similar boot camp. The discussion portion of the interview went exceptionally well; he knew all the topics and had opinions on using certain technologies over others. It seemed like a good fit, until we got him in front of code. He struggled to do a simple object assignment in JavaScript. To your point, any small typing mistake or mouse movements shouldn't be judged. Interviewers know you will be nervous during the interview. If they are discrediting candidates over that, they shouldn't be interviewing.
- ryanmccullagh 10y agoDefine the object assignment? Was it really just an assignment statement? I was rejected with almost no feedback from a company this month. I feel I solved their live coding thing correctly using a recursive approach. However, I was told they didn't like my coding style, so they didn't move me forward. They also said I moved the mouse too much.
- hasbroslasher 10y agoI too went to a bootcamp and spent about 3 months searching for a job afterwards. I didn't study anything. I let my bootcamp knowledge get written to disk and freed up more room for new stuff. I drank a lot of beer and went hiking in the woods as much as I could. I worked on my projects ~5-7 days a week but never for 8 hours at a time. Just a constant, undirected exploration and work towards building new things. Granted, I had some background in tech (particularly in data science, stats, college-level programming) so I might be an edge case. At first I thought I was screwed, but after 3 months I'd completed 3 vastly different projects and it showed in my interviews. I could speak intelligently about 5 or 6 different programming languages and a multitude of database technologies, libraries and had my college-years algo/OO knowledge in the background. I had done everything from front-end design to Machine Learning, low-level algorithms engineering to full scale apps. And then I got an awesome job. I doubled my yearly earnings. People may scoff at bootcamps, but it helped in my case - if nothing else I got half a year to mess around with computers instead of doing that after work like I had been for the last couple of years. As far as interviewing goes: I got rejected a lot. I rejected a lot of companies, especially those who tried to sell themselves to me. I was picky about not working in a megapolis hell. I didn't bug people if they didn't get back to me. I turned down second interviews if the person who interviewed me was an asshole or was non-technical. And it all worked out. Unsurprisingly, I landed at a company with a lot of views similar to mine. We all mock Silicon Valley. We don't work around the clock, we like having lives outside of work. Few of us are traditional tech people. All in all, a very life-affirming experience.
- alexc05 10y agoThis is a really nice story! It made me smile. Thanks for sharing your experience.
- rocqua 10y agoHow do people justify and act going into an interview if you think there is a less than 10% chance of you wanting the job. Do you just walk in and say "Yeah, I don't think this is going to work but I came here just for the hell and experience of it." This feels like a shitty thing to do, it feels even more shitty to walk in like you really want the job when you're mostly there for the practice.
- megamann 10y agoIs it less shitty than companies who are always advertising that they're hiring when they aren't, just to collect resumes?
- UweSchmidt 10y agoAs companies commonly pay for your ticket if you have to travel to a job interview, a friend of mine half-jokingly suggested you could do it full-time as a job for a few years after university. You'd schedule several interviews in a far away city and charge that ticket several times. More seriously, most people are scared of changing jobs and hate the application process, to their own peril. If you could really own this whole process you'd win on every level.
- evanelias 10y ago> He told us to send emails directly to real people with each application. It could be anybody. As long as someone read it. > For most small companies or C-level executives, the email format is usually firstName@dreamCompany.com. For larger companies, it may be firstName.lastName@dreamCompany.com. This advice is horribly annoying, and I really wish people would stop recommending this awful email guesswork garbage. I'm an engineer, and I once had a [firstname]@[company].com email address at a company. Later on, the company hired a recruiter with same first name, followed by a head of marketing with same first name. Naturally I started getting tons of unsolicited mail, several times per day, from people who simply assumed my email address corresponds to one of the other people with the same first name. This included a lot of resumes from people who graduated from coding bootcamp. Often the same person would email repeatedly, a few days apart. It definitely did not help their chance of getting hired.
- gxespino 10y agoHorribly annoying to whom exactly? You? A person with a tech job who couldn't figure out how to create an email filter for the words "job" and "resume". OP increased his response rate almost 4x. Why wouldn't he recommend this practice?
- evanelias 10y agoYes, annoying to me. It's unsolicited, unwanted email from a stranger, interrupting my concentration several times a day, and often not even intended to be sent to me. This is the very definition of spam -- why would you consider this an acceptable practice? There's no fool-proof filter for this. I can't safely filter out all email containing certain keywords, even from external email domains. I would get legitimate email containing those words from external domains -- legit candidates, people I met at conferences, etc. I don't argue that it's good to contact a real person when trying to get a job. But at least take the effort to ensure you're actually emailing the person you intend, not some other person who happens to have the same first name! Given that the OP applied to nearly three hundred companies, I can absolutely guarantee he just sent these out blindly based on guessing the first name. And seeing as he only got phone screens out of 11% of these companies, one would assume most recipients of these emails view them the same way I do: garbage.
- TXV 10y agoI live in what should be considered a developed country in Europe with 5 years work exp also abroad, of which almost 2 of software development in a highly specialized field, and I make one third (1/3) of what the average CS grad makes in SF. It feels very bad...
- UweSchmidt 10y agoHow much you pay for rent, and how long is your commute? Maybe you feel a little better now :)
- TXV 10y agoI live in my own house and my commute is 20 mins by car, but I still feel bad... thanks for the different point of view though
- Mz 10y agoIt feels very bad... Making scads of money in SF is (or can be) kind of like getting constant blood transfusions so you don't bleed out. It doesn't necessarily translate to a great quality of life.
- kbart 10y agoYes, but living in developed Europe country vs SF you probably get: 1) free healthcare 2) free education for you and your children 3) better work/life balance* 4) better overall life quality* Sum that up and you shouldn't feel that bad after all. *unless you live in London or other overcrowded city, but you've mentioned you live in your own house, so that's probably not the case.
- mkurz 10y agoHoly shit. Is this some kind of a joke? > Otherwise, companies automatically categorize us into junior developer roles or tag us as “not enough experience.” ??? What do you think you are after a TWELVE WEEK coding seminar (no matter how intense it was)? It looks frightening to me that he doesn't even know what "junior developer" really means. How ignorant can someone be to NOT think to be a junior dev right after "graduation". Like: I am taking a first aid course - but you have to call me doctor afterwards - otherwise I am pissed off! > A study by Triplebyte has found that bootcamp grads are weaker in these areas than computer science grads. Really? No... This must be a lie! No personal offence here, but honestly, I just can't imagine how a serious company with a certain degree of professionalism is going to hire people like him for a serious software engineering job (or similiar). But actually, if I think back, at my last job a couple of years ago we had a guy similar to him - it ended up giving him all the shitty work that wasn't too complicated and hadn't to much impact on the success of a project (some HTML & CSS stuff for the frontend) but nobody wanted to do (because it sucked). It took him hours and days to finish stuff someone of the rest of the team would have done in maybe half an hour. I am also wondering about the reactions in the comments - also here on HN - interesting to see what kind if audience is hanging around here. Anyway. Coding camps seems to be a good way to make money - for the organizers.
- harmegido 10y agoThe article does read a lot like the "Psychopath's Guide To Career-Hunting". Honestly, the tone reminded me a lot of some of my undergrad peers who were pursuing investment banking jobs, which I suppose makes sense considering his about section. That all said, if your goal is to get the highest paying job possible, this seems like useful advice.
- kybernetyk 10y agoUgh, the code in the teaser image. Triggers my OCD.
- maxaf 10y ago> Early on, I gained experience, built confidence, and secured offers from companies that had less intensive interviews. I hate being used for interview practice. Don't apply to work for me unless you're intending to accept an offer.
- sgarman 10y agoIf the candidate is good I will take the opportunity to convince them otherwise.
- stuartcw 10y ago> At Hack Reactor, we’re trained to mask our inexperience [...] > [...] Ultimately, you need to convince companies that you can do the job. > [...]At the same time, you need to convince yourself that you can do the job. Err.. Ultimately you need to be able to DO the job...
- lambda_func 10y agoAs someone who has gone through software engineer interviews with top Silicon Valley companies, what I see is that the process is biased towards 1) people with lots of time and good memory (so that you just work for several months to churn through the books/questions available out there), 2) new hires (tend to get easier questions as far as I can see, they don't get design questions, etc.) 3) people with competitive programming experience (especially Google or FB). If you are not in one of these groups then good luck, you will need that. Especially experienced software engineers who are married/have kids have very little time to prepare for these sort of interviews, which makes it very hard for them to succeed. The way software engineers are interviewed right now are totally messed up, and is a big waste of time.
- manish_gill 10y agoJesus Christ. To think I had to go to college for 4 years to get my CS degree, at the same time be an intern, take part in GSoC, and then work as a backend engineer for ~3 years only to make 1/66 what this guy is making in another part of the world. :|
- wishinghand 10y agoWhere are you making ~$1.8k/year?
- phmagic 10y agoSpeaking from a hiring manager's perspective: I don't care if you're from a dev bootcamp or an Ivy League school. I care if you care about your craft. Experience is really hard to quantify, hence the programming tests. They are a crude way to standardized the measurements. But care for your craft comes through right away. I'd ask them about the stuff they are interested in within their domain, then dig a little deeper to see if they have a strong grasp of what they are talking about. Sometimes I'd debate with them. I also find that the best engineers I've ever met came from a variety of countries. They turned out to be amazing team members to work with as well. Once you're no longer just looking at US schools and US dev bootcamps, you get amazing selection. Speaking from an applicant's perspective: Heck yea, study up no matter how trivial you think it is or how it belittles your years of experience. Remember that this crude method is not an accurate measure of the hiring company's potential or yours. It's just a filtering mechanism for both sides to start a dialog.
- qwtel 10y agoThis reminded me of that scene from "The Big Short": Mark Baum: I don't get it. Why are they confessing? Danny Moses: They're not confessing. Porter Collins: They're bragging.