Live data from Hacker News

Always Be Coding – How to Land an Engineering Job

medium.com

131–140 of 250 posts

Re: Always Be Coding – How to Land an Engineering Job

#131
post #70
post #43

Hiring is entirely broken. I don't think anyone is listening to developers. I took some data about this (tracking pixel in a Developer Auction profile), but someone did an even better job than me and posted in these comments: https://news.ycombinator.com/item?id=5730843 I want a company that treats me with dignity and respect, even before and during the interviewing pipeline. How a company treats people during interv…

Bootcamp in the Marine Corps is an example of a tough hiring practice. Are your friends and family doctors or lawyers, per chance? Both professions use grueling hiring marathons which are much, much worse than a software engineering interview (residency and the bar exam). All other engineering professions require a rigorous licensing process, whereas software engineering is one of the cushiest jobs on the planet. In…

The bar exam is a licensure process, not a hiring process. The hiring process at a large firm (analagous to a big software company) is a 20 minute screener where you chat about the weather, followed by a callback where they put you up in a nice hotel, and you have a series of 20 minute chats about the weather punctuated by a nice lunch at the local steakhouse. Gruelling it isn't...

Not that I would suggest replicating it mind you. The interviews are simple because they're literally just screening for people who can't have a converstaion about the weather. 95% of the substantive decision is just looking at the rank of your school and then your GPA. 90% of the candidate pool is excluded by arbitrary cutoffs from the get go. Which is an awful way to hire.

Re: Always Be Coding – How to Land an Engineering Job

#132
post #16

To properly prepare for these interviews you have to invest quite a bit of time. At this point in my life (late 20s), my time is one of my most valuable resources. So, the last thing I want to do is spend that time effectively preparing for a data structures and algorithms exam. Each time I sit down to brush up on the details of Prim's algorithm or the exact implementation of quicksort, my eyes glaze over and I start…

Exactly! This is why we, at my job, only hire software engineers after a (paid) two-day test period in which they actually build some new feature on one of our products. Nothing too fancy but interesting enough for them to be a challenge and representative enough for us to see what they're capable of. At least as important: they will have lunch with us, talk with us, have fun with the rest of the team, ... This allow…

How big is your company? I can't imaging this scaling. This sounds good in theory, but I think one could only hire 1) people currently unemployed or 2) new grads who haven't had jobs. Also, I imagine plenty of good engineers balking at this type of time commitment in building out a feature when the company should likely be proving why the engineer would want to work there?

Is your stack that simple that someone can get up to speed on it in a few minutes so that they can actually build out a feature in two days? Most places I've worked, requires significant onboarding to setup dev machines with all the environments and then understanding how the code flows.

Re: Always Be Coding – How to Land an Engineering Job

#133
post #29

Log(1)=0 If you interviewed once and got the job, your score would be 0.

Similarly I'm 8 for 10 and have been working for nearly 20 years. So I get a score of 80.

If I had an 80% success rate, but was 18 for 20 I'd score 117. To get that, I'd need to be changing jobs every single year.

The score is not only totally made up but pointless and adds nothing to the rest of the article. It's just there to suck you into the article.

Re: Always Be Coding – How to Land an Engineering Job

#134
post #7

You can build a startup in the time it takes to thoroughly prepare for these interviews/positions. Willingly subjecting yourself to this rat race is essentially the same thing as stamping yourself as an "ibm man," in the words of Jobs. Who cares if you don't know the intricacies of all the hot algorithms of the day. Spend your time creating actual value for the world, instead of practicing just for the sake of impres…

This seems silly. If nothing else, following the advice here will help you hire better engineers for your own startup.

Disagree unless you're startup is building a library that implements solved computer science algorithms.

Re: Always Be Coding – How to Land an Engineering Job

#135

It's funny to me that items 1-6 in your technical tips pretty much boil down to "be an A-average student in a CS/CprE program". I think there's an alternative, and it fits into your ABC. Build useful software. If you've got an idea, implement it, and if possible, open-source it. In the process, you'll likely rely on a bunch of open source software, and maybe you'll run into some limitations. Every limitation is an in…

I've rarely had interviewers actually seek out my github/bitbucket/xxx repositories, bug reports, and code reviews.

I assume it's because they're busy "filtering" through hundreds of candidates and don't have the time to read the thousands of lines of code I've written.

Re: Always Be Coding – How to Land an Engineering Job

#136
post #127

One of the problems that I have with this list is some of the stuff I just haven't had to deal with since college, like implementing all those data-structures like bubble sorts//binary search, linked lists, etc...In 15 years, I've never had to implement one (when I was a C/C++ coder in the '90s, we used 3rd party libraries like Dinkumware). Interviews that ask these type of questions are really skewed at hiring young…

If someone gave you the specification of a linked list, binary search, etc, could you code up a mostly correct implementation off the cuff? This is precisely what these types of questions test for. Just having it memorized gives an interviewer very little information. Can they work through a logical problem and code up a solution? This is strong signal for programming ability.

I've never memorized any of these algorithms, but I can code them up pretty easily given the specification. If you can do this it doesn't matter how many years you've been out of college.

Re: Always Be Coding – How to Land an Engineering Job

#137
post #127

One of the problems that I have with this list is some of the stuff I just haven't had to deal with since college, like implementing all those data-structures like bubble sorts//binary search, linked lists, etc...In 15 years, I've never had to implement one (when I was a C/C++ coder in the '90s, we used 3rd party libraries like Dinkumware). Interviews that ask these type of questions are really skewed at hiring young…

What you're claiming is a straw man of the processes I've personally seen. In most good interviews they ask you something specific to implement, such as how do you implement a code complete feature in an IDE or an event logger. There will be some obvious naive solution that would be slow with any reasonable amount of data. They want to see if you can use the data structures in practical way.

The expectation is that if you're smart enough you can reason to a more optimal solution even if you haven't seen a trie in 15 years.

Re: Always Be Coding – How to Land an Engineering Job

#139
post #72

> Master at least one multi-paradigm language ... Some good candidates are C#, C++, Java, PHP, Python, and Ruby. They all look imperative to me, what happened to multi-paradigm?

Would not for example C# or C++ count as multi paradigm as it can be considered to support both imperative and object oriented programming?

C# and C++ counts are part functional.

Re: Always Be Coding – How to Land an Engineering Job

#140
post #119
post #98

Earlier quoted context omitted.

When I was talking to them I was informed the hiring process usually took around 8-9 weeks. First a screening call, then a phone interview, then sometime later an in person interview, then an evaluation day in a Google building with multiple interviews and talks with various parts of various teams, then they would let you know within a couple of weeks. Yeah, no thanks.

The process may span 8 or 9 weeks, but you'd probably actively spend about 8 or 9 hours. That's a couple hours on the phone, and 5-6 hours on site. Presumably, you expect to hold the job for next few years of your life, at a minimum. If you can't budget 10 hours of your time, and you can't wait for a few weeks for an answer, it just doesn't sound like you really want to work there. Unless you're in desperate need for…

I was unemployed at the time (I'd just moved back to the UK and was looking for work) and didn't fancy hanging around for 2 months, so there is that.

But even if I was employed I'd be looking for an out much faster. I work with 4 week notice periods (max). A two month decision process is just messing you about.

--edit-- I'll add that the work sounded uninspiring, the location wasn't ideal and I was trying to go freelance/contract at the time (successful within a couple of weeks) so their goals and mine were completely misaligned...

Post reply on HN