Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
How to prepare for losing your programming job (codewithoutrules.com)
115 points by itamarst on May 14, 2020 | hide | past | favorite | 100 comments


At a former company that shall remain nameless, the bigwigs from the head office came out to announce the closing of our satellite[1] office. They offered a relocation package to the head office for some of the folks working one of the projects we had in the remote office. Except it was kind of a crap relocation offer: same salary moving to a more expensive part of the country working for a person everybody thought was an idiot.

They also gave everybody a month to accept or decline that offer.

In practice, that meant that everybody at the remote office spent a month getting paid to look for a job. It was a bit like the job center in The Full Monty, but folks were actively supporting each other: helping each other practice whiteboard questions, going over each others' resumes, etc.

If you can get current on some new technology on company time or raise your profile, do it. Folks who didn't get a relocation offer got to clean out their desks the day the bigwigs showed up.

I don't have numbers from the group of people formerly of that office, but from my experience it's a hell of a lot easier to find a job if you have one than if you don't. If your company seems shaky, the time to start looking is now.

[1] Edited per suggestion here: https://news.ycombinator.com/item?id=23181222 originally read "remote".


That was kind of them. The one time I actually got let go from a programming job was when the company shut down suddenly: I showed up Monday morning and found out that there was an all-hands conference call at 9 AM. Everybody in our office dialed into it and it was a recorded message that the company had shut down and we were all unemployed effective immediately.


Yeah, it's the first I've seen or heard about that happening. I suspect the company wanted to keep some of the people, but greatly underestimated how little anybody was interested in working at headquarters.


In some states, subject to some limitations, that is illegal.

E.g., California's WARN layoff notice requirements:

Per Chapter 4, Part 4, Sections 1400-1408 of the Labor Code, WARN protects employees, their families, and communities by requiring that employers give a 60-day notice to the affected employees and both state and local representatives prior to a plant closing or mass layoff. Advance notice provides employees and their families time to transition and adjust to the prospective loss of employment, time to seek alternative jobs and, if necessary, time to obtain skills training or retraining to successfully compete in the job market. For more information, visit WARN Frequently Asked Questions. ...

https://www.edd.ca.gov/Jobs_and_Training/Layoff_Services_WAR...


Are you sure that still applies if the company is bankrupt? Even if it does how are they supposed to comply when there is no money.


I don't know, hence my "subject to some limitations" weasel.

My principle point was to make known that immediate layoffs without notice or compensation are not something all employees are required to immediately and unconditionally accept. Know and assert your rights.

Searching "warn notice layoffs bankruptcy" gives some additional information.

https://duckduckgo.com/?q=warn+notice+layoffs+bankruptcy&ia=...

A bankrupt firm virtually always has assets. The question is how these are distributed amongst creditors. Inclusive of employees.


I believe it does. In the case of California, there is an exception for "unforeseeable circumstances." Bankruptcy is usually very predictable. The law doesn't mean you can't go bankrupt; you just have to give people warning.

The fact is the MO of most companies is to deny anything is wrong right up until the moment everyone gets fired. One needs look no further than the Telltale games saga.


Isn’t it a good thing that many companies are paying their remote employees the same? That means people dont have to take a paycut to live where they want.


Without revealing too much, this was a remote office, rented by the company, with folks in a variety of roles, including management. Not a couple of random remote employees.

The question of paying remote employees the same as "regular" employees is complex. Switching to the hypothetical:

If a company is headquartered in Louisville, KY, and somebody wants to work from e.g. Los Angeles, it would be ludicrous for the remote employee to accept the same salary in LA as in Louisville because the cost of living is much higher in LA. Considering the opposite situation, I find it unlikely that a company headquartered in LA is going to jump at the chance to pay an LA salary to somebody in Louisville.


I've always found this incentive structure perverse. Take Peter Norvig and place him in LA vs Louisville. In either case he's a remote employee working from a home office. <very profitable company> will want to pay him differently depending on where he lives and depending on where their HQ is. And yet his output is the same. Let's say he prefers less dense cities, maybe then his output is even higher in Louisville, as the lower cost of living affords him a better home setup and a social circle that all can afford to live nearby each other.

Society seems to want to cram people into as small a space as possible near work places, optimizing for business progress. Seems to me to make sense in the short term and fail in the long term. Here's to hoping a silver lining of the pandemic is better utilization of space towards human happiness and the health of the global ecology. :)


A company will pay as little as it can to any employee. Including Peter Norvig. Peter Norvig's minimum acceptable offer is just far higher than Average Joe/Jane Progammer's minimum.

Right now, LCoL area employees complain about getting paid less in absolute terms. If they get bumped up to HQ payscales, the HCoL-area employees will (rightly) complain that they're now being paid less in relative terms than the LCoL-area folks, despite producing the same value as them. So there's no winning, no "fair" answer.


The elasticity of talent of the average engineer is so much higher than that of Peter Norvig it doesn't really make sense to discuss it. For an individual person it doesn't matter where they work if theres no replacement, but for any engineer, it matters.


If they are remote employees, why would the employee's city matter to the employer in either of the cases you mentioned (beyond any tax or employment law implications)? If the company is sure enough that the remote candidate from Louisville is talented enough for the job, it makes no financial sense for the company to lose that candidate over salary if they would have paid the same amount to a candidate in a different, more expensive city.

One exception I can see is if the company would pay a premium for remote employees living in a city where they have an office, so that they can be asked to come in if there is an emergency.


I don't think you'll get an LA salary in Louisville. But you can get a high salary for Louisville from an LA company.

In the long run I imagine this affects the cost of living in an area for people that work for companies in that area. Ex. what happens to smalltown Iowa when people get remote jobs and drives up prices for housing and food?


"Remote office" here doesn't mean working at home. It means an office that isn't in the same city as company headquarters.


"Satellite office" may have been a better term.


Quote I've seen a lot: "Leetcode every day keeps unemployment away"

Seems the best way to avoid long term unemployment in this day and age is to be "coding interview ready" constantly.

My best friend at a FAANG always tells me he dreads having to look for a job ever again - whether voluntarily or involuntarily, as he is in no way shape or form ready for coding interviews.


A lot of the companies I've seen actually hiring these days are doing more legit work-sample problems than Leetcode tasks.

Coinbase and Stripe both have programming tasks that are clearly condensed versions of the actual work you'll be doing there. Google does too if you get a good interviewer, though it can vary a lot between interviewers. Snap, Lyft, and Facebook were all leetcode exercises - but they're ones that have been hurting more from the coronavirus recession.

Leetcode is popular now because there're a bunch of tools (CoderPad/Karat for interviews and Leetcode/HackerRank for practice) that make it easy. I'm already seeing the pendulum start to swing the other way though - many of the best companies are building hiring processes tailored to their own business because they get a competitive advantage from doing so, both because they get more signal on prospective applicants and because it means interviewing does not become a transferrable skill that you can use to get multiple competing offers.


I've encountered takehome problems more often these days, but they've always been in addition to leetcode interviews, not instead of.

As one example, a "mid-tier" company gave me homework to do, which I spent a lot of time and effort to do a good job. The team apparently was impressed - supposedly I had one of the best solutions, and I got to the onsite. Then the onsite had two leetcode rounds, one of which I struggled with. I got rejected. I don't know the exact reasons of course, but considering I felt the rest of the interview seemed to go great, I suspect it's the leetcode problem I failed to get the superoptimal solutino for that killed me.

Nowadays my policy is to just reject any company that gives me homework to do as part of their interview loop. More often than not it's a waste of time. The exception would be companies like FAANG or other "top" companies. I'd definitely still do homework for Coinbase or Stripe.

Some company I've never heard of or some non-tech company? Nope. At least studying leetcode scales horizontally across many companies.


I ask leetcode round to be before homework. I don't do it if its other way.


The problem with realistic work-sample problems is that most of the difficulty in real life programming comes from complexity which cannot be replicated in a 1 hour technical interview. You can't really test someone on their ability to add a feature to a 10 million line code base that interacts with 50 different other modules in an interview setting. A 1 hour technical interview is going be either realistic but trivial and useless for differentiating candidates, or difficult through contrived means (like leetcode).


> Coinbase and Stripe

I got asked leetcode in stripe interview.


How long ago? I interviewed 2 days ago and everything was work-sample. It sounded like this was a recent (last couple months) change; one of my interviewers had never given the particular problem before.

(Similarly, the Coinbase interviewer said that if I had interviewed a year ago it would've been leetcode but they've redone their process significantly since.)


Is it -all- work sample based? Or does leetcode come into the picture somewhere?

(BTW, does that mean homework? Just want to clarify. Something like "build this feature or write a function that does this" kind of thing?)

How about the on-site? What do they make you do there?


> My best friend at a FAANG always tells me he dreads having to look for a job ever again - whether voluntarily or involuntarily, as he is in no way shape or form ready for coding interviews.

I resonate to this, coding interviews significantly annoy me. I'm a significantly better developer than I was 5 years ago, but I would have passed so many interviews 5 years ago that now I wouldn't remember where to begin, and that's because I studied relentlessly for interviews. My second to last semester of college I focused so much more on studying for interviews than my own classes, that I had the spreadsheets to make sure I would just get my C's just to ensure I could nail interviews. I did well in almost all of my interviews, and my grades completely stopped mattering.

Right now, if I practiced leetcode daily, I'd think it would interfere with my work. I don't want to do it on my free time as I actually enjoy a work/life balance.

I love my job, I'll study when I have to, but until that day comes I'm going to focus on becoming the best engineer I can be and continue bringing value where I'm at.

Tech interviews need to change - they just reward people who studied for the points, not a true representation of who would be a great engineer for their company/team. Similar to how high school overwhelmingly rewards "passing the test" more than active learning.


I feel like there should be a decent correlation between being willing to put in effort into interviewing to progress in your career and being willing to put in effort into doing your job to progress in your career, so it makes sense for companies to select on the former trait. Also, if someone refuses to spend a few dozen hours practicing leetcode to get a 6 figure pay rise then either there is something seriously wrong with their work ethic or they like to pick stupid hills to die on. Red flag?

I don't understand why people complain about leetcode so much when it's such a low bar to clear. A lot of people want $400k/year jobs at Goldman, but Goldman won't hire you unless you went to Harvard or Wharton. Shouldn't people be glad that they work in an industry where the only barrier standing between them and a $400k/year Facebook job is a few hours of interview practice?


Here’s how it really goes, as someone that fails Leetcode tests and interviews software engineers . Sometimes you are just in a high-demanding position, taking classes on the side to make your engineering better IRL, or you have a family. Grinding Leetcode just has a bad return regarding improving skills . I usually just end up focusing on being better in different ways. The candidates I interview seem to have Leetcode figured out anyway and it’s starting to become a bad tell. I’m having much more luck sniffing out good people with systems design questions.


I both agree and disagree with this.

I am thankful that there is a "meritocratic" way of getting into these top companies. But I don't agree grinding leetcode is the way to measure such merit. I definitely don't agree that it's "just a few (or even a few dozen) hours" to prepare or that it's a low bar.

That said, I've come to terms with leetcode and coding interviews in general. If I ran a company or if I was a hiring manager with clout, I'd never hire people in such a way. But that's the current state of the game, and short of becoming the 99% shareholder of Google overnight, there is nothing I nor most people can do to change a thing. So might as well play the game and try to win it, instead of just whining about it.

The irony is, I enjoy solving leetcode problems now. It's actually become my hobby - since all my free time outside of family is consumed by studying for interviews. But I don't enjoy whiteboarding hyperoptimal leetcode solutions under 45-minute interview pressure.


> But I don't agree grinding leetcode is the way to measure such merit.

I think it's a much better way of measuring merit than people give it credit for. It measures a mix of problem solving ability and work ethic (it's not purely about innate skill, you can get much better at it through practice so it's also a test of whether you're willing to work for career advancement), both of which are probably things you want to hire for. You can also easily ratchet the difficulty of these things up or down depending on how selective you want to be when hiring. People complain about how "unrealistic" leetcode problems are but there's no intrinsic reason why the interview has to exactly replicate the job, it just has to be correlated with traits that are useful for the job.


But what about...actually doing good at your job? Yes, you can BS about your actual job and accomplishments, hence why coding interviews supposedly exist. I acknowledge that.

But then - why do anything more than the bare minimum at your job to get by while devoting the rest of your time (including any downtime during your job's working hours) to study leetcode for interviews instead? At least until you get into an "endgame company" - FAANG or otherwise, where you feel comfortable staying a while.

Disclaimer: I actually do this to a certain extent - and I am not proud of it. In fact I am downright ashamed of it and angry at myself. It completely goes against my ethos of being the best engineer and best professional I can be. Which is how I worked when I was younger and more naive. But excelling above and beyond at my real, actual, work, will not get me anywhere, at least where I am now. I want to get into such an "endgame company" so that I can do my best work again.


> But then - why do anything more than the bare minimum at your job to get by while devoting the rest of your time (including any downtime during your job's working hours) to study leetcode for interviews instead? At least until you get into an "endgame company" - FAANG or otherwise, where you feel comfortable staying a while.

That sounds pretty healthy to me. If other companies want you to do work instead of leetcode, they should pay competitively.


> Also, if someone refuses to spend a few dozen hours practicing leetcode to get a 6 figure pay rise then either there is something seriously wrong with their work ethic or they like to pick stupid hills to die on. Red flag?

I have only once in the course of my 18-year career received a six-figure (barely) pay raise. It was one of the few occasions where I did not need to cram dozens of hours of Leetcode.

> the only barrier standing between them and a $400k/year Facebook job is a few hours of interview practice

There is a hell of a lot more than a few hours of practice standing between a candidate and a $400k job at Facebook. A $200k job, sure.

Also, you went from "a few dozen" to "a few" here.


Yeah, I'll play the game if I have to (I feel fairly safe in my job because I'm good at it).

> being willing to put in effort into interviewing to progress in your career and being willing to put in effort into doing your job to progress in your career,

I don't think many of the skills I've picked up in my career apply to interviews. I think they would be great skills that carry over to other companies, but I'd have to exclusively practice leetcode to feel comfortable with interviews. That's a problem in my book, because I have a lot more to offer than "Yeah, I can do leetcode problems all day."


I've heard the term "professional (coding) interviewer" and "professional leetcoder" thrown around too.

Also wouldn't be surprised if quite a few people are leetcoding on the side during their day job's working hours.

Disclaimer (as per my other comment): I'm guilty of it too.


Your argument make sense if only high paying companies do leetcode interviews.

I think a lot of small and mid size companies are cargo culting on it too.


I don't know--I think I'd rather do some very hard thing once in my life (like graduate from Wharton or pass a bar exam) and have that be the ticket to ride, rather than have to grind Leetcode perpetually to stay on the train.

I can't imagine a lawyer having to grind LeetLaw for months every time he wanted to do a job change.


What if you couldn't get into that elite law or business school for whatever reason? Your door to the elite law firm could be closed, permanently.

The lawyer probably doesn't have to refresh the fundamentals of law and grind legal cases constantly, but then again, the lawyer in the small unimpressive law firm likely has no chance, ever, to get into a top law firm.

The line of business .NET developer at some unimpressive non-tech company can grind leetcode and get into top companies.

I hate the means to which makes this possible (grind leetcode) but I would pick the option of having upward mobility any day.


I think you're right and I sincerely think that this gets easier with time. Practice makes perfect and subjecting yourself to the process on the regular makes it less stressful when you actually need it to go well for you. In an unforgiving sense, I simply believe this is part of the job. I'm not saying it's right, but it is what it is.

Personally, I interview at another company every 6-12 months. It's not so often as to be a significant burden, but it is frequent enough to be a reality check if I'm getting rusty or if employers are starting to expect more of me (because my seniority is increasing). Recruiters are so busy trying to find bodies you're unlikely to burn any bridges by just going through the motions to see if you're a fit. Hell, I have an ongoing relationship with a Google recruiter that I talk to every other year or so just to see what's up--I've never worked for Google, but I have interviewed there a few times, a few times with success and others without it. Worst case, they don't give you an offer and you walk away with an understanding of what your weaknesses are. Best case, you get an offer and maybe it's a better one, you now have a better job.

Disclaimer: Am FAANG employee :)


The problem with this advice is that you get good at leets but you knowledge of framworks/aws/cloud stuff gets atrophied.

leets are good for FAANGs but not so useful at mid tier.


I don't know - I've encountered leetcode interviews all over the place these days.

The only exception might be more recent front end interviews, which seem to do "code X in JS" questions more. But ironically the more prestigious companies like FAANG seem to do this more, while the lower tier companies are still leetcode for front end engineers.


I usually work many years at the same job. I think its worth talking to agents and applying for jobs each year even if you wont move, its a good way to keep track of the market and realize where you're behind, before you need to look.


Read most of this but are there any non-obvious points of value that I missed. Cut expenses and try to get a new job seems to be the primary point. Anything else?


Do extrovert stuff, speak at conferences, network make lots of friends / contacts, be popular.

Hard for introverts like me, I am better at computers than people which means I am at a disadvantage even in the computer field it seems.

Worried if I ever have to look for a new job especially getting older.


Isn’t that so counter-intuitive? This clearly means that it’s an inefficient market. I don’t need to have a good social network to buy a nice TV. What a great problem that needs to be solved.


> Do extrovert stuff, speak at conferences, network make lots of friends / contacts, be popular.

Dangerous advice in the Covid era :-P


The key seems to be having the skills to reliably generate revenue. You can get away with a lot if you can do that.


Not really lol. The good bits of the article are the hyperlinks.


Spend a ton of time generating public stuff?


And get your name out there publicly. The author is right that getting your resume into a hiring manager's hands is a lot easier if you're coming in via a current employee than through the website.


That still won't help with the interview. They'll look at that and say nice! Heres a 2 week coding assignment that we'll call it 3 hours of work.


I maintain a file of headhunters that I have come in contact with. If I lose my job (or even feel like I'm going to), I've got about 10 people who can earn money by finding me my next job.


Whenever I get recruiters pinging me on LinkedIn, I send them a link to my "I'm not interested right now, but add your email here to get notified when I am" Google Form. So far, I've collected over 400 email addresses from recruiters. If I ever need to find something urgently, I'll send out an email blast to that list.


> I maintain a file of headhunters that I have come in contact with.

Its definitely good to keep in touch with a list of people like this. I think you'd be better off to ask your friends for recommended people. Most recruiters that randomly contact you are crap.


The only thing I use email tags/folders for is to tag recruiters. Last time I looked for a job (in September), I just ranked the companies in order of my interest, and went down the list. 80% of the recruiters were happy to hear from me (even those who I had ignored)


What is the best way to approach an overdue reply? I always find myself at a loss for words as the thought “sorry for being a spacey moron” ricochets around my brain.


Unsolicited cold recruiting emails aren't owed any sort of response. Apologies are not needed or expected. Just a "Thanks for getting in touch. Would you still like to talk?" is sufficient.

Alternatively compose a "Thanks, not now" template that you send to all recruiters when they email. Then later on hit them with a "How about now?"


I don't even acknowledge it. I just say something like "Just wanted to let you know that I'm on the market, are you free for a chat?"


That's interesting! What are the criteria for adding someone to the list? I'm guessing the average "dear sir or madam, please consider this COBOL job in Indiana" spam doesn't qualify, but what's the bar they have to pass?


I do that too. But I have often wondered, if the Big One hits the economy at large, how many of those recruiters will still have jobs?


Other signals to look for is your company's inability to raise a round. This is an important one, typically rumors will circulate internally regarding financing. Not being able to raise a round is a signal that says investors, who have made a best effort to judge your company's books have decided your company is not a good investment. Those investors will have been provided a balance sheet that you typically will not have access to. So pay careful attention to this signal.


That only applies to the small percentage of companies that isn't profitable and that still relies not only on investor money, but on fresh financial injections to keep their head above water. Most companies aren't like that.

A lot of software companies will continue to generate income as well, due to having recurring income like subscriptions and licenses.


We need some startups in the proof of skill space as vast amounts of time and energy are used by developers providing public proof of their skills rather than actually doing work or improving their own skills.

Sure, talks and blogs can be useful, but in the same way that companies are harmed by resume driven development, there are community downsides to resume driven blogging if just that things trend towards whatever is new at the time rather than a diverse range of topics. It also is not helpful if a lot of them are geared towards impressing recruiters rather than informing.

We want tutorials by people who actually enjoy creating good tutorials.

I say this as someone who spent a couple weeks on Stack Overflow answering trivial questions after graduating so that I had more of a public profile. I would answer anything and everything easy as I wanted to get over 200 rep points (so I could say I was "ranked"). Anything challenging was skipped simply because if it took more than half an hour to answer, I might not get 200 points that day.

I knew nobody would see me as an expert due to inexperience (so nobody would really read by Stack Overflow answers), so I was trying to generate proof of enthusiasm.

That isn't desirable for the programming community as a whole as it meant that niche questions I had the answer to never got answered as I had points to earn.

EDIT: Leetcode is for passing the interview. Resumes. blogs, and tutorial writing are about getting the interview. Leetcode doesn't attempt to solve this problem.


Back in my teens (mid 20s now), I was very (very) interested in Photoshop to the point where I would consume dozens of tutorials a day and just work on projects for things like forum signatures or post headers and graphics. My "graphic design" career never took off, but to this day I still have muscle memory of certain tasks and actions I've created and still set up my workspace in the same way.

Now that I'm a programmer I rarely find the itch to dive into things like this again. Every now and then, I'll want to create some silly website with a game or something and again I'd find myself spending late nights just working on it. I've realized that the fact that I "know something" isn't what drives me, it's that I'm interested in what I want so much that I'll learn anything just to get to do it.

Lately, I've been starting to feel the itch for doing something related to baseball (again, something I love), like data analytics or amateur scouting or something. I have no idea how to get started, but I just know I want to. I hope I find tutorials from people who are just as excited to share information as I am to absorb it.


This may be a fun place to start. There is a lot of work in this area and this type of technique is great for baseball: https://docs.pymc.io/notebooks/hierarchical_partial_pooling....


I really appreciate this resource. Thank you!!


There is not nearly enough content regarding the Korean/Japanese/Taiwanese leagues that are filling the baseball void right now.

I know next to nothing about the players and my typical sources are not putting much out except "the broadcasts are pretty watchable, great circle change." Would love to see more scouting reports on the players who have been very much overlooked in all this.


> We need some startups in the proof of skill space as vast amounts of time and energy are used by developers providing public proof of their skills rather than actually doing work or improving their own skills.

That completely dismisses the fact that the majority of businesses don't want good coders. They want adequate coders who aren't assholes. You can't create an online test that judges whether someone is enthusiastic, kind, honest, cooperative, and reliable. Nobody wants to work with a "10x developer" who passed coding challenges with flying colors but is unpleasant to work with. I'd much prefer to be judged based on my personality and my willingness to learn.

What you're suggesting would not solve any problems, and at worst could harm people's ability to have a job if employers buy into such poppycock.


I agree, I think we need to get away from proof of skill things like leetcode.

In its best light, its discriminatory. How is someone with a life, such as children or other things going on, supposed to take huge amounts of time away from their personal life to practice skills that are unrelated to the thing they actually want to do?

one of my biggest regrets when doing my masters degree was spending my extra time learning things a data scientist would do. Like learning how to go through huge amounts of data, pull NFL data to see which yard lines on the field have the most injuries (1 and 2 yard line because of % of runs), learning NLP techniques like LDA, etc. Only none of this mattered, the guardian at the gate was asking me how to build and balance binary trees, etc.

The fact that I regret spending my time learning how to do the things the job requires is a travesty of the system. It exposes how asinine the whole system is.


I feel the same way.

There are so many things I want to learn and do - both technical and non technical. Including many things that will make me a better engineer for employers current and future.

But all of that is put on hold so that I can grind leetcode on my way into a better job first. Because nothing else matters.


I want proof of skill, but I want it to mean I rarely have to prove my skill again (or at least only at years-long intervals like 5-10 year refreshers).

Everyone's afraid of that rogue false-positive developer though.


The problem I am seeking to solve is people spending time and energy making less than passionate tutorials or open source contributions for the sake of resume development.

What does that have to do with screening out assholes?


>We need some startups in the proof of skill space [...]

If you're unaware, you can search google for "HackerRank Codility Devskiller leetcode"[0]

If you're already aware of those, do you have something in mind that the existing skill evaluators don't do?

[0] https://www.google.com/search?q=HackerRank+Codility+Devskill...


I have enjoyed all of those and the Stockfighter attempt in this space as well. They all seem to have hit a hard obstacle in convincing the general, non-FAANG hiring market that they can provide "better" candidates that any old staffing agency. I have definitely had hiring managers in non-software companies tell me that they will just pick from three resumes from a staffing agency of a standard enterprise developer job without much actual consideration of the candidate's resume or portfolio of previous work.

I do suspect there exists a category of higher-end headhunter agencies with a stable of high-quality, proofed candidates that those agencies can more successfully place than other attempts. Just an anecdote, but I have seen in my area some things that look more like a "small team" placements where that team has some history of helping companies radically improve their software quickly. I am specifically thinking about an actual team that gets hired as a group but into fulltime roles at a company as a unit. This seems to be a prequel to an acquisition of the company that hired them being the end goal. Then that entire team seems to repeat the process elsewhere . . .


I know about those, but those are about passing the algorithmic interview/conducting the tech interview.

I am thinking more about how one might demonstrate expertise in the kinds of things one shows off in blogs, such as expertise in Spring with respect to financial systems.

No ideas presently, just something I would like to see.


I do; write your CV, provide references. Build a portfolio website and/or blog and just write about things you have and are working on, issues you ran into, etc.

I think most developers find their jobs interesting and have a lot to talk about, even if simultaneously they don't believe what they do is much to talk about.

Note to self: Do some writing again. i started a portfolio site on Github years ago and started to just word vomit about my earlier projects and jobs (internships, school projects). It adds up over time.


But do companies care about that stuff? Nowadays, it seems everyone is just interested in your ability to solve leetcode problems on a whiteboard, plus some system design. After that, just make sure you're not an asshole, and voila, you're in.

I've long been in finance tech (i-banks, hedge funds) and still am in the industry (though trying desperately to get out). At the start of my career, I made some effort to learn the business domain. After a while, it became apparent that very few people (including hiring managers) cared, and that it was a total waste of time as far as furthering my career - even if I wanted to stay in finance tech. Better to just study leetcode.


I guess it depends on whether your problem is getting interviews or getting through interviews.

All the leetcode in the world doesn't make them call you in, but it certainly helps you pass.


... or a professional licensing board.


Those don't work nearly as well as people around here think they do WRT ensuring competence.


Do they work sufficiently well for the purposes we need it to, though? As another commented mentioned, the bulk of jobs require adequate coding skills with good soft skills. If you have the license, does that mean we can skip the whiteboard coding bunk?


Would you trust a doctor who wasn't certified?


Triplebyte attempts to be this.


I keep intending to try them. I should do that.


I was impressed with the quality, breadth, and insightfulness from their quiz. Obviously gameable, but still really well done.


Start looking for that new job before the previous one has ended. This is just a slightly next-level variation of simple networking, where you don't merely make friends all over the place, but make it clear that you'd take a better offer if one were to come along.


+1 for this. In our industry, finding a job when you're unemployed can be quite difficult. Massively so if you're "old". Networking helps with that--definitely recommended.

Also consider gathering "knowledge" resources from your current job. Silly stuff like your dotfiles, but also things like config files from the hosts, parts lists for physical systems, phone directories, etc.


It's called "dig your well before you are thirsty".


Great advice as always (newsletter subscriber). The other piece of advice I offer is to join Stack Overflow and answer a few questions a week. This helps reinforce skills, understand common developer pain points, and can occasionally lead to a job offer.


This article provides advice for how to spruce up your resume in order to procure interviews.

Getting an interview is maybe 10% of the overall process.

To make it through the interviews, you need to study an algorithms textbook and practice coding exercises. At the very least, you should be able to solve any of the Easy-rated problems listed on Leetcode without issue. You need to know what things ike "dynamic programming" are, etc.

I'm not saying that this is the way things should be. Just that this is the reality of what you will need to do to procure a job offer.

Edit: I see my advice has proven controversial. If you have better idaes about how to prepare for whiteboard interviews -- which many of us are statistically likely to encounter should we be thrust into the job market -- please share your suggestions!


It saddens me that this is the way things have gone.

With 20+ years in the industry I can say that I never encountered this kind of thing until fairly recently. I know it was out there, especially with the BigCorps, just not that common when I was looking for work 10ish years ago.

It would be hard for me to stomach an interview like that without just walking out. I do not code on whiteboards.


start leetcoding hard everyday, its not possible to get a job these days even at tier 2-3 without leetcode screens.


I have never, in ten years, had to do leetcode to get a job. And what on earth is "tier 2-3"?

This whole subthread reads like it's escaped from r/cscareerquestions.


Thanks for sharing your perspective. Your experience is very different from mine. Are you trying to say that you believe whiteboard interviews are less common than I think they are? Or are you trying to say that there are ways to conduct a job search such that one can successfully avoid such interviews?


There are ways to get a job without leetcoding still. But they are becoming rarer and rarer.

I think it mainly involves focusing on non-tech companies (who, BTW, are also starting to join the leetcode cargo cult).

I got my current job at a non-tech company (bank) several years ago. I did not get leetcoded back then. The interview was mainly language and framework trivia. Nowadays, we have to subject candidates to leetcode.


How safe are mid tier management jobs compared to devs. Upside of management positions is that interviews are relatively easier.


Less safe in a downturn. When a company wants to tighten its belt but is still mostly solid, and don't have particular products that are clear losers, middle managers are an attractive target: they need the engineers to do the work and support the customers, and the sales people to bring in the money, but if they can get by with fewer managers, maybe they can do all that for less.


I was looking at airbnb layoffs[1]. There didn't see to be a lot of middle managers on the list. Ofcourse, I don't know the ratio but i was expecting to see more middle management than engineers.

https://www.airbnb.com/d/talent?location=&uuid=&relocation=&...


Jobs that scale linearly in proppotion to demand, like customer service and sales (anything where most of your time is spent focused on one client at a time), get cut when demand drops.


A job lost adds options, a job landed removes them.


Trying to stay up to date with everything is a surefire way to make sure you're never really good at anything




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: