Interview like an asset, not a beggar
swizec.com
swizec.com
When you're medium, technical chops get you hired. Can you do useful work right now and quickly fill gaps in knowledge?
When you're senior, your experience and opinions get you hired."
Thought this was pretty good. Hard to make that mental transition over time since we all start on one end. The default behavior is to continue interviewing the same way as your career progresses.
And they hired some freshman, because he did? But who ended up writing amateurish software code that always broke.
When that shift happens depends on the company and what the team is hiring for.
In contrast, at another interview I got given a take-home assignment that I almost didn't want to do because it felt like the kind of work I would do in my day job and I didn't want to do that in the evening or my time off. That task, on the other hand, probably measures infinitely better how effective I am on the job.
I'm assuming you were hired to write code, so I suspect your ability to write code in an interview is at least somewhat relevant.
I agree that, if you're hiring someone who will primarily be managing others or, maybe, architecting some systems, without doing the actual implementation (which, btw, I think is a suboptimal way of doing things), then you shouldn't test their coding. But if you're hiring someone to code, you need to check they understand how strings, memory, dynamic programming etc works.
> Testing whether I can find the longest palindrome subsequence of a string optimally via a tabular or memoized dynamic programming solution in 20
Not just "practically zero" - but like, "for sure zero". As in, there is absolutely zero chance you would need to solve a problems like this (or Sudoku, etc) in the course of actual engineering work.
It's a bullshit question, essentially.
You're better off giving someone a more realistic take home test and have them walk you through it during the interview. You'd get a better feel for what their "real" code looks like when they're under less pressure, how they communicate while presenting their solution, etc.
And interviewing at a very selective company doesn't need to negate your belief in your own value. If you could be the top applicant at some other company but you interview at a company that might not even hire you, then applying there should be a choice that you're making because the trade-off is somehow beneficial to you. Your value within the overall job market remains, and you can always walk away.
Unfortunately, if there are many more potential employees then you're going to be a beggar no matter what. If you're applying to companies who only get a few applicants per position, then you have leverage and the companies actually have to look for quality.
Unfortunately, a lot of smaller companies simply cargo cult on BigCo hiring, as that's all they know. I see smaller companies who have unfilled positions for 12 months or more, because they apply the same method to hiring as the company with hundreds or thousands of applicants.
All anecdata points towards luck/connections. There’s really no way to stand out at this stage when everybody’s CV is the same.
One can often read sour vents on reddit on devs who lose hope, get depressed and burn out after being unemployed or stuck in dead end jobs for so long while they keep grinding leetcode and churning projects on github because the internet told them that SW development is a meritocracy and the key to success is putting enough hard work in your free time even though there's devs coasting on six figure jobs who haven't written a line on github in their life on their free time.
Nope, it's definitely no meritocracy, the tech world is just as unfair as the rest but has much better PR about it: watch Silicon Valley TV series made by the satire comedy genius Mike Judge(Office Space, Idiocracy) where billionaire tech magnate Gavin Belson would always sugarcoat his hostile business decisions with talks of buddhist spirituality, endangered animals and making the world a better place while his true motivation was only the accumulation of more fame, wealth and power.
Some ideas I've used in the past:
1. Reach out directly to key managers (found on LinkedIn), referring to the job listing. The key here is showing both initiative and an interest in working for the company beyond HR's rapidly growing pile of resumes
2. Read as much about the job and the company as possible, then use that context as a starting point to write a cover letter explaining how your skills will help them
Sure, a 1st term coop is useless--just like junior engineers. Most of the 3rd term coops, however, are almost on par with the first promotion from junior.
In a way, this is luck. How lucky for me that the third job fit what I knew about and was comfortable talking about. It was lucky that they asked the kinds of questions that were things I was very experienced in. I was the same candidate in all three interview loops, just unlucky in the first two that what they were looking for wasn't a good fit for what I knew, and lucky in the third that it was a good fit.
That said, there's also a way in which this isn't luck. That is, I had to have some area of knowledge and skill or else I would have been flailing around forever without connecting.
Any individual interview is luck, but hard work and experience can increase the size of the target you're hoping to hit.
- Attending a university that is hard to get into and has a strong CS program
- Having an impressive GPA
- Winning academic or software-related awards
- Having commendable accomplishments in software-related "extracurriculars", such as hackathons etc
- Whiteboard coding ability
I've done numerous junior interviews for FANG companies. They are extremely liberal in handing out interviews, and doing well in these interviews will guarantee a job offer. "Connections" has almost zero correlation to how you're graded in these interviews. Being unlucky can trip you up every now and then. But if you get rejected from every single FANG company, I guarantee you it's not because of luck.
You might want to read https://wesdesilvestro.com/the-prestige-trap from earlier on HN.
I've already read that article and I don't see the relevance, unless you're trying to imply that I'm a prestige-chaser just because I've worked at FANG companies
I know about different bar - not in customer service business, in software engineering. You're given a task to write a parser in 15 minutes - literally, you solve it, it mostly works - for some simple inputs at least, you don't have time to test it thoroughly. You don't pass - the bar is different.
Your experience tells that the startup is too early to think about scalability problems. They can keep things simple for a solid another iteration of the product. You explain that to them, they listen, but they are doubtful - they've heard that scaling is crucial, and even though they have like a hundred of customers, they want that - so your advice is considered wrong. You don't pass that bar.
They tell you they need somebody senior to coach and mentor a bunch of more junior engineers, somebody who'd steer the whole technical stack. In remaining minutes of the engineering interview they ask you to write Rabin-Karp implementation, or AVL balancing. You don't pass the bar if algorithms don't work first time.
And trust me the interviews for that are just as grueling as they are for engineering. Solid 7 hours of on-site followed by business case studies for homework.
But unlike engineering, you can’t skirt by as a pure code monkey who can leetcode. You have to actually know how to do the job in a real world context.
I love it when they give you "homework" that they just forget about. They asked me about numerous technologies, and I went to explain them, but wasn't given a chance. The CTO poo-pooed my résumé like it was difficult to read. He must've felt threatened and so sabotage my shot. They ushered me out the door almost like throwing me out by security; so incredibly rude. I didn't get the job obviously but they later asked me to interview again but I told them to "fuck right off." No, you don't get a second chance to unprofessionally dis me, and I won't work with or for such narcissistic slave-drivers. I didn't care about my rep in this instance because they're clowns who would never amount to anything. Don't be unprofessional, even if someone else is.
A few weeks later, I got a $10k/week consulting contract for a funded startup already in acquihire talks.
Don't settle for BS or bend-over backwards for jerks because it will just get worse. It's not worth your mental health.
The most important part is to never get lazy by always keeping skills current, never accepting something is impossible and roll up sleeves to dig deep. Do what other people won't, i.e., confirm/refute root causes with evidence rather than shrugging.
I also have free community office hours, feel free to sign up if you want to chat at length: https://temikus.net/office-hours
Note: i'm not arguing about efficiency of homework - it is probably higher than that of short puzzles, yet there is such an asymmetry in it, that any minimally respectful place wouldn't do it despite the supposed higher efficiency.