Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Even if you think you’re well paid, now is the time to look around. I’ve had a lot of friends, mentees, and coworkers get huge bumps on total compensation even as relatively senior engineers and managers. Pay is jumping and companies aren’t doing a great job keeping that up for their people who have been around for a few years. As an employer, that should be the top worry, keep comp up, don’t lose your people because you’ve become complacent on pay and don’t understand that the market is changing right now


On the flip side - I tell recruiters immediately they have to AT LEAST match my current comp. Every single one of them so far has said they can't even get close.

If you work at FAANG - your RSUs (most likely) have doubled in about a year. You could easily already be getting paid more than the max offer for the level above where you're currently at.


I've actually seen the opposite. I'm at a FAANG, but based in Toronto. For the first time, recruiters are saying to me that yeah, they can do better than that total comp. Often much better.

I like my boss and team, but if someone offers me enough money and a fully remote job, well, it's going to be hard to say no.


Always remember: your manager is right now looking for a new job too.


This is a reality. I stay where I am for various reasons but a strong one is working with strong people that I enjoy working with.I've already seen a few walk away and it wouldn't take many more before I felt like it was a different place.


A day later, but I wanted to tell you: this is a really good point, and stuck with me since I read it.


I wish this was the case in London. I'm at a FAANG and have recently done a few interview loops with non-FAANG companies based in London (as well as a few that are based in SF but hire remote in London) and all were offering <40% of my current TC. When I told them my current TC they offered 50% of my current TC.

Starting to wonder if there is simply no chance of getting even close to the FAANG TC and whether I'm stuck for the 4 years at my current job.


Tech compensation is weird in London.

Local/non-FAANG companies pay around $50-130k USD equiv total comp (£35-100k) for junior -> senior software engineer

FAANG pay $150k at least for junior positions. If you're a senior engineer in London you can get a 50% pay bump for becoming a junior at a FAANG company. (I personally went from senior non-fang to mid-level fang for roughly triple my total comp)


FAANG outside of USA/SV is basically any other tech company, this is not surprising.


For years in the Toronto tech scene, Amazon paid top dollar. Not SV prices, but better than anyone else in Toronto. One or two other companies might compete, but they didn't many openings.

Now you've got Shopify, Instacart, Uber, Snap, Wish, and others, all of them strongly competing on total comp, all growing rapidly.


My understanding is that FAANG pays very well in India and Japan and Canada. Is this not true?


They pay top-end for the local market. However, if a competitor comes in paying Bay Area salaries for remote work, that can be a lot higher than local wages.


After extensive research, I've found that almost no companies are paying Bay Area salaries for remote work outside the US.


Honestly, no in the tech field at all, I would be surprised anywhere is paying Bay Area salaries in US besides maybe NYC or some other high COL area.


> After extensive research, I've found that almost no companies are paying Bay Area salaries for remote work outside the US.

That doesn't seem surprising -- why would they?


The thing, specifically with Canada, is that they don't have a big home grown VC landscape and a few home grown firms. This, coupled with their out of control immigration quotas, creates a market where there's an oversupply.

Now, that creates two markets, those who can't move to the US (won't pass the higher bar for US immigration) and those who won't. I've seen SV comp for the latter. But we're talking O-1 tier engineers.


My anecdote is the impact that GitLab's hiring in New Zealand is having on applicant's salary expectations.

https://nz.linkedin.com/jobs/gitlab-jobs?position=1&pageNum=...


Salaries in Japan are 65-70% of SF Bay Area (for FAANG, local is much worse)

London, U.K. is about the same as Japan. I don’t have experience with India, and my knowledge of Canada is too far out of date to be useful.

All those salaries are very good for the local market, but are also much lower than SF.


> my knowledge of Canada is too far out of date to be useful

All I can say, is in personal anecdotal experience, I make about the same money (with better hours!) in my current factory job than I would have if I finished my degree and went into software, and with none of the stress or crunch time or deadline associated. For example, looking at Glassdoor they have Google's Toronto office reporting starting salaries of ~$90-100k - while my base pay is only ~$62k ($29.50/hr) we get double-time overtime after 40 hours, I can (and have) clear(ed) well over $130k/yr with minimal effort.

They're offering decent salaries compared to other tech jobs in the area, but it's average-at-best if you start comparing unskilled labourer salaries in as a comparison.


Glassdoor is pretty bad for salaries at FAANG. That might be the average base for someone in Toronto. But they're getting a bonus of 15%, plus RSUs usually of about ~50%+ of base - but in the last year these RSUs have doubled, so ~100%+ of base.


After travelling in Japan, I was really surprised by how cheap apartments are in Tokyo. For reference, this was 3 years ago near the big main Sumo arena/dojo, at around $800 USD/month, and fast food was around $4 USD/meal.

I don't know anything about the income tax rates, but 65-70% pay seems like you'd take home more than an SFer being paid SF rates.


If you’re ok with a tiny apartment, yes. If you want some space or have a family it’s not as cheap, but it is definitely less than 65% of Bay Area rent.


In India, at a FAANG, it’s usually 40-50% of Bay Area salaries.


We should bear in mind that salaries are only a part of total compensation in U.S. mothership locations.


Actually I meant TC is 40-50% of Bay Area TC. Thanks for pointing out TC vs salary. I can’t edit my original comment.


Even leaving aside golden handcuffs the number of companies paying top of market seems relatively small. That’s especially true once you get past entry level positions.


I feel the opposite. A decade ago, it was pretty much Google, Facebook, and some elite trading firms that could pay a ton. Now so many startups have grown up, there’s a huge list of them on levels.FYI that will pay 400k+ for senior and 600k+ for staff. I recently have interviewed for a ton and got rejected a bunch, but I joked with my spouse that there’s so many that by the time you’re done interviewing at all of them you’ve “cooled off” at the original one and can re-interview, so there’s an “infinite loop” of 500k opportunities for experienced SWEs. Despite 90% interview fail, I just accepted a 500k all-liquid offer- despite me not even being at staff level at the company. Hard to say that’s not top of market, and it’s not at a FAANG either.

FAANG is also a horrible acronym for the top paying companies since two of those companies don’t even pay that well. Companies like Airbnb, Pinterest, Lyft, LinkedIn and many others will outpay FAANG companies and their equity is fully liquid.


I work at FAANG (not Amazon) and have worked for similar companies. I was rejected by multiple top tier hedge funds after 1-2 tech rounds, after getting a mid tier hedge fund a few years ago. I interviewed with multiple then pre-IPO companies that have since IPO'd. They all asked Leetcode Hard problems on the phone screen even. My original FAANG + hedge fund interviews from a few years ago were not even quite as difficult, just some dynamic programming questions and tricky recursion, mostly Leetcode medium with some hards thrown in occasionally.

I also got an offer from a crypto exchange which is a household name, but they claimed they switched to non-negotiable offers and wouldn't even match my current TC. I had to walk.

Now wondering if this is just some game that companies are playing to either make themselves seem more selective or show "growth" through hiring / headcount to make investors happy. The interviewers also seem less enthusiastic about selling their companies to me, and more like they already made up their minds that they do not like me. One kept asking me more and more questions to cause us to run out of time so that I wouldn't be able to code.

The questions I'm being thrown at all are ridiculous in difficulty now, and the interviews feel like they are designed for me to fail. Who can code a segment tree in 20 minutes? I ended up completing this one, and it wasn't even the hardest question I was asked. I even had a recruiter ask me to prepare for their company's interview by doing TopCoder Div 1 500 problems. That's absurd (IOI difficulty level). There are people in Eastern European countries who do nothing but train for these competitive programming problems with coaches and all since secondary school.

I suppose I will just remain in my relatively cushy FAANG job. Despite having very little time to prepare, being employed while interviewing can be a good thing, after all.


Omg I need to up my reqs in my interviews.


Yes. Ask for 620 though, then they come back at 575 and you just minted half of a 150k salary for being shrewd hehe


Bay area?


Usually refers to San Francisco, California. https://en.wikipedia.org/wiki/San_Francisco_Bay_Area


Exactly this. We just gave all our devs a significant raise - way above the norm, and way way earlier than we would. We're acknowledging the reality of demand, scarcity and wage inflation. My co-founder (also my wife) and I immediately felt our blood pressure drop once we did that.

Market conditions are making it hard to retain and very hard to hire. We've done a bunch of other stuff to recruit - which I described in another comment here - and it's making a huge difference. Employers who don't respond to these market conditions are in for a rough ride.


That is very smart.

My old employer gave me a 3% raise in January and tried to make it some big gift. I left anyway in April for a 50% bump. New company, same level of responsibilities.

The old employer underpays everyone, so that percentage is higher than it otherwise would be, but still.


Current employer just gave me 5%. I'm interviewing for ~30%. /shrug


Kudos for doing the right thing. I hope (and expect) that for you and your business, it is the right thing. Hopefully those devs are quite skilled, and worth keeping around, and will stay and help the business grow! I feel like a lot of times employers think devs are expendable, and while that's true to some extent, devs also can be quite worth paying extra to keep around especially if they've accrued quite a lot of domain knowledge that pertains to your business.


A past organization of mine just had a big data breach. It would not surprise me if the near complete loss of domain knowledge and institutional knowledge was a contributing factor/cause.


Yep. I got burned out, quit, took some time off and then got an offer that's a nice raise.

I think it's healthy for all of us to reflect on how fortunate we are in this field, sometimes.


I'm at a FAANG-like company with 1m USD TC because of stock appreciation.

Where would I get a job like this?

I hate my job a little but the hate is not strong enough for me to leave a 1m TC job for a lower TC.

I'm stuck basically. I'll be gone after 4y definitely


At a point, probably really soon, you’ll have enough money that you’ll never need to work again. With that type of salary, I’d be surprised if it was more than 2 years. Don’t stay in a job you hate just to earn money that you don’t really need anymore!

Though I admit, it’s hard to imagine walking away from 1m per year, even if you don’t necessarily need it...


Yeah, key is to find a job you can add value :)

And by my experience if you don't need to work, live gets really boring quickly. All your friends are at work, can only do such travel, if you do your hobby 8/5 a week it gets boring.


Yeah, the plan is to have enough money to do whatever you want, regardless of the pay. So you don’t ever need to work a job you “kinda hate”, and can maybe find a startup or something that you think is good for the world.

I totally get that it would be so dull to do no work for more than a few weeks, ha. I’ve taken a couple months off between jobs before and had plenty to do, though.


Yeah, few months is fine but after a year I had done everything on my list :)


Yeah, for 1M/yr I would put up with a fair amount of bullshit.


It is a gold rush era. I recognize that this is a rare opportunity.

1m for a senior (not staff) engineer is very hard to come by.


Jesus, how much did the stock rise? What was your TC before appreciation?


4-5x. The initial offer was around 490k a year. ~50% is stock.

The stock can 3x more.. so I'm holding and hopeful.


We just gave our devs relatively modest increases, and only one raised any objections and ended up with a more than a 15% increase. I worry about all those devs who won't say anything (why should they have to?) and will just go somewhere else for a 20% bump.


> why should they have to?

This has been one of the driving motivations behind literally every job change I've gone through since I started working in the software field.


It's because experienced SWE's know that the easiest, most frictionless way to get a significant increase is to change jobs.


This.


You can get good raises by changing jobs. You can also get good raises by talking to your manager. Don't be passive about the income that you get.


It's really better to push yourself to know the changes in hiring and be getting job offers every 2 years, taking one most of the time. The things you do internal to a company are mostly risks for eventually dropping out. I.e. you end up in a position you have never seen a cold interview for.


For those of you who have done this, how do you maximise your compensation? Tips appreciated.


Ask for it.

Seriously.

I interviewed with one company, things went well, I was interested, but they came out of the gate with total comp that was lower than I was looking for. They were looking at a stock grant of X over 4 years. That would have worked, provided that I was basically guaranteed a refresher each year for X (so that by year 4 I'd making X per year in RSUs). I found out that refreshers were usually not for that amount, and not guaranteed (barring performance issues). I indicated I was looking for X per year in RSUs (given the salary and bonus they were looking to offer). The recruiter was a bit shocked, but went and asked anyway...she came back with an offer granting 4X RSUs upfront, meaning, yeah, I'd be getting X every year, starting from year 1. And I'd still be eligible for refreshers and whatnot each year.


I learned to ask for things just a bit too late. For my current role, the job description explicitly noted there would be no relocation assistance. I ended up paying for my move out of pocket.

They were actually looking for two people for the role I was applying to. After starting, I met the other guy that was hired a few months before me. He had moved from even further than I had. After talking, he mentioned he was given relocation assistance. When I asked him about the explicit mention that that would not be offered. He simply told me he noticed it, but asked anyway and got it.


Expensive lesson, but a useful one. A good candidate who is willing to sign is too valuable to pass on just because they're asking for 5-20k in one time expenses.

Even if they stuck with no relo, they might have extra budget for sign on, which is equivalent. For whatever reason, companies tend to be sticklers for budget allocation, even if total amount equates, even to their bottom line. Relocation assistance might be frowned on as an 'unnecessary' overhead cost ("can we not find good people already in the area?!"), but a higher sign on wouldn't ("it's a competitive market"), despite also being overhead.


No relocation assistance means no guilt when you switch to another job in under a year. Or at least less, if you got a signing bonus too.


I don’t even do a call with the recruiter without listing the salary range or what I want to make. Saves a lot of time.


Out of curiosity, do you think the recruiter would have gone to bat for the comp I was requesting if there wasn't an offer on the line, and I was just another candidate?

I've certainly had recruiters bring up the comp at the start, and I've indicated it was too low, and we've moved on. From the company's perspective, that probably makes a lot of sense, especially if they have no wiggle room. But from a candidate perspective? I've never had a company who wanted to hire me fail to meet my ask (with the caveat my ask has never been completely outside of market, even if it's outside of their own guidelines, and with the stipulation I was willing to take comp increases outside of just salary); if the role sounds good, the company sounds good, I'm willing to spend the time to make them want me before I ask about comp. If they come in high enough, great, no time wasted; if they come in low they have every reason to try and negotiate with me.


This may sound weird but it's easier to do this when you don't need it. When we're negotiating, people can smell desperation. If you can easily walk away from a negotiation/offer, you're suddenly in a much more powerful position.

Once you're there, figure out how much sounds like a lot and ask for even more. Either they'll surprise you and accept the terms, or you will negotiate "down" to the amount that sounded like a lot. Worst case scenario, they don't take the deal and you reject them to go find a new negotiation until you get what you want


This negotiation tactic works fine if you don't have to do full day coding challenges to get to that phase, while also working a full time job.


These days I just immediately turn those down without a second thought. It's a joke of an interviewing system and your time is way too valuable for that.

Happy to do coding questions, but not 8 hour long take-home projects. Those have screwed me too many times


Could those long coding projects be a strategy to force you into sinking so much effort into the process that you're now in a weak negotiating position due to the sunk cost?

I admit I'm speaking from ignorance here, and am only curious to gain more insight into this.


Could those long coding projects be a strategy to force you into sinking so much effort into the process that you're now in a weak negotiating position due to the sunk cost?

Yes, absolutely they can! And almost nobody talks about this. Most of the conversation about take-home projects surrounds cost/benefit ratio, but almost never as a negotiating tactic and sunk costs.


The worst kind are the coding challenges were they don't even respond back to you after delivering it. Happens a lot in London.


I felt like it was more of a way to see if you are willing to take on a large workload no questions asked when you are hired.


I've never thought of that! only rver heard my bosses/colleagues say they felt it gave them a better signal. But it wouldnt surprise me if some people had darker motives like this


This is very, very true. I refuse to do coding based interviews. I'm flexible on certain homework. Hell will freeze over before I have to sit through a multi-hour panel and coding session. Like for free? Hit the bricks. Who can just take 4-6 hours out of your normal work day to swing into something like that? Not even germane to my role.

The fastest way to avoid companies like that is to set boundaries on what you will do and will not do. Good recruiters LISTEN and respect this. I do not want my time wasted and likewise for the recruiters and companies I am talking too.


I have a different strategy, I will happily do one one or two take home exercises (and I'm willing to sink 8-16h into them) but I will tell the recruiter I'm not doing any additional coding on-site (personally I find this high-anxiety, and a crappy way to gauge skill). Happy to chat about all kinds of things, but if someone drops an involved coding question in an interview I'm done and I will walk out and not return future calls.


> if someone drops an involved coding question in an interview I'm done and I will walk out and not return future calls

With the greatest respect, the vibe I'm getting is "this person is prone to reacting in a volatile manner when things are not to their liking."


Sure, and this is the internet where tone doesn't translate well. I'd be tactful and courteous about it: I would finish the session, politely decline future interviews on the day and thank them for their time. It's clear we are not a fit for each other at that point.


Teleport has a comically large test. Think 20-40 hours.


strongDM is hiring and we do not spend 20-40 hours or do take home tests. Email ryan@strongdm.com if you are interested.

https://jobs.lever.co/strongdm


I think just the opposite: the best time to pounce on them with salary expectations is as late as possible, after they've already invested the interview time on you and seen you excel.


If they already have their budget in mind before the interview process began, it won't buy you any leverage waiting until the very end. They won't care that they burnt the money/time/energy considering your candidacy, even if that costs them more in the long run.

I've ended up wasting a lot of my own time with this strategy. I'll get to the point where they want to extend an offer, I name my number, and then we have an awkward 15 minutes on the phone (e.g., "the VP couldn't ever approve that amount") and then I say I'm not interested 24 hours later.


"If they already have their budget in mind before the interview process began"

This is impossible to know though, as is its breakdown. Many places have very fixed limits on salary and bonus, for instance, but RSUs and sign on they have a lot of freedom.

Even the places that have fixed budgets all around may have multiple openings of varying levels; a strong interview showing may cause them to bump the level they'd look to hire you at, just to meet your comp expectations (I've seen this happen numerous times as a manager when a candidate came back asking for more).

If they bring it up at the start, great, it saves a lot of time for both of you. If -you- bring it up at the start, though, you're just closing off opportunities.


If you’re closing off opportunities that you wouldn’t take anyway, it’s just another form of time savings. I make sure we’re at least in the same chapter if not the exact same page on comp before spending more than a 25-minute intro.


As I mentioned elsewhere, I upped my RSU comp 4x what was initially offered by bringing it up at the end, for a position I -was- interested in. Had I come out of the gate saying I expected that, I'm quite certain the response would have been "we can't do that" and moved on.

Fair enough if you only want to work for a company that offers your target comp -without- negotiation (since even if they're open to negotiating at the start, you're doing so when your hand is weakest), but otherwise there is nothing to be gained by bringing it up at the start.


What was X here? Did this involve any competing offers?

It seems so strange that they’d offer X and just after being asked would switch to 4X. That’s a huge range.


100k vesting over 4 years -> 400k vesting over 4 years. No; only that I didn't have to leave my current place of employ. The total comp was toward the upper end for my market, though slightly lower than FAANG for the area (and with a company whose stock ticker is less aggressively/consistently rising, so less likely to be a huge gain come vestment). I did not make it explicit that I did not have competing offers, instead using phrasing that may have implied it (for instance, "will next week work for your timeline?" "Yes, though please let me know ASAP if it slips as I can't speak to after that").

Yes, I was surprised as well that they were willing to move that much. However, I know RSUs tend to be a lot easier to move on for companies than salary or bonuses (in fact, the salary offered was about 5% lower than my prior; I didn't even touch on that, instead looking to make up the difference, and then some, in the RSUs), and vary a lot more in the market. There are some companies that don't offer RSUs at all, pre-IPO startups whose grants are of questionable value, companies that grant RSUs yearly but only to a percentage of their employees, companies that give comparatively small amounts of RSUs to all their employees, and companies that give comparatively large amounts of RSUs to all their employees. That means the market range is huge and increases can more easily be justified; market range for salary tends to be far more constrained.

It's possible this may have also been due to being outside of SV; while the company has an office in my metropolitan area, I don't believe it's mostly dev, and while they have salary guidelines for outside of SV for dev, they may not for equity. So it may have been that the initial RSU offer was tailored to the locale, and my ask was okayed because it was in line for dev. Point still stands; they were incentivized to move, and they were able to. Had I asked at the start they would likely not have, simply because a recruiter isn't going to ask to make an exception for a candidate they haven't even interviewed yet.


For small businesses this might be true. Small businesses often aren't hiring top tech talent commanding high comp levels, it's usually businesses with loads of capital.

If you're playing chicken on who can waste the most capital against these guys, you're probably going to lose (otherwise, you wouldn't be applying for a job there in the first place, they'd be asking you to hire them).

They've got a pool of other people like you, they know it and they know roughly what it'll cost to find another you. They might be willing to jump a little to avoid that but they're not going to bend over for it. They also want someone willing to take orders, not someone too aggressive, so that might signal that you could be a problem. I'm not saying don't stick up for yourself and try to get your piece, just that you should be careful playing these games unless you're prepared to lose and walk away.


I was going to post something longer, but I think I'll keep it short and charitable: you are clearly not a hiring manager.


If that is the process, and you've survived the gauntlet, you have the leverage.


Just to add my own data point. I studied leetcode for 6 months during covid. Sent about 30 applications interviewed at 10 companies and received 8 offers.

2 of these offers where double my current TC through negotiation. It's not just FAANG but startups making very good offers. I have 3 YOE.

For negotiation:

Always ask for at least 20% more + a signing bonus

Have competing offers

Interview well

Be willing to walk away. If they can't do it there's another company that will.


Could you give rough range of these offers? Would be interested in understanding absolute numbers


My lowest offers where 120k CAD Base, 100k USD in options.

My best two offers:

200k CAD Base, 390k USD RSU /4 years, 20k CAD Sign on

200k CAD Base, 330k USD in Options / 4 years, 20k CAD Sign on

I'm also still waiting on some numbers from Google Canada but I doubt they will match.


These offers show signs of life for Canadian salaries. I am presuming you are in Toronto, and these were IC roles.

What types of companies were the 2 best offers?


I'm actually in Vancouver but both roles allowed me remote.

Wish is one so post-ipo.

The other is a Series D startup based in SF.

I think remote is your best bet for high salary in Canada.


mind naming some of those high-paying ones in Canada? I'll be shopping soon and curious.

edit: also in Van.


Wish is one. Though I'm not a big fan of their product.

The other is a Series D startup based in SF


yup - Wish paid a lot in TO as well but then again, their product isn't necessarily appealing.


https://www.kalzumeus.com/2012/01/23/salary-negotiation/

(I've not done this as such, but I'm a technical writing consultant and the way you get more money from clients is similar.)


This article is gold.

Also, I enjoy the posts by Josh Doody: https://fearlesssalarynegotiation.com/


1. Look on glassdoor, indeed, whatever site you want to use to find out salary expectations in your role/area

2. When asked, give this number as your desired target, but a lot of times they ask about old pay. if the old pay differs greatly, avoid the topic by pointing out how 'the old job requirements are different, benefits are different, etc. But if they press on this number, tell them, don't lie or completely avoid it

3. Assume the hiring manager has 15% over the offer amount. this amount may also impact your future raises, so it may be better to cap your ask at 10%. but don't be afraid to go ham asking more for starting bonus, longer vacation, golden parachute, etc

4. Good luck!


Nice list. Check if asking about salary history is banned. It is in 21 states. https://www.hrdive.com/news/salary-history-ban-states-list/5...


Some of these bans only affect state agencies, the city, or special cases.


Even if a company asks, you can say no. I’ve never revealed this info and never will. You are giving them a free negotiating card. It doesn’t serve your interests at all.


You can always choose some qualitative attribute or perk about your job, just like businesses use, and put a monetary value on that to you. The value becomes subjective and you can use that as a reference if you decide you do want to disclose or inflate your salary to negotiate higher for a new position. This is more difficult if the person happens to be familiar with a given businesses rates but businesses are often so secretive about comp rates (for their own advantage) that even management within companies may not know how much you're paid.


Sometimes it’s okay. Like when you made a metric ass ton at your last job and you know they can’t match that number.

Now you get to negotiate fridays off, 2 months of vacation, and a golden parachute of $X per year worked. Everyone is mad at CEOs but I once negotiated a $25k golden parachute for when I left, _just to see if it was possible_


Agreed. It doesn't matter at all if asking is banned. Just learn how to talk around the question (not difficult), and always refuse to reveal previous salary.


I like that advice.

It appears to matter in practice. Perhaps some people are struggling to talk around the question.

> A study published in June 2020 from researchers at Boston University’s School of Law found that, following the implementation of salary history bans, workers who changed jobs saw their pay increase by 5 percent more than comparable workers who changed jobs in the absence of a ban, with even larger benefits for women and African Americans.

https://www.americanprogress.org/issues/women/reports/2021/0...


> a lot of times they ask about old pay

Been in the industry 25 years and never once agreed to disclose my previous pay. Don’t do it. Ever. It’s none of their business and will only be used against you.


They can just get it through a one of the many private spy/surveillance agencies (one of the credit bureaus, for instance) if they really care.


Credit bureaus do not know your salary unless you’ve reported it to them (and why would you do that?)


You may have told your bank at some point, maybe when getting a loan or something, and I doubt they wouldn't share that with a credit agency.


I'll disclose it if I'm concerned I'll get lowballed. Ends the discussion pretty quickly.


Don’t use Glassdoor for tech. They are almost always incorrect since they are salary focused. Use levels.fyi which understands total compensation


Correct. And assume levels is old data at this point. And don’t be shocked, people really make that much.


Blind can be another good resource


I discovered Blind recently and agree it's an awesome resource.


That site names salaries almost 50-100k higher than what I see on other salary sites in Canada. Does the site only aggregate top paying companies, or is the Canadian tech sector actually way more robust than I thought?


The Canadian tech sector has completely changed over the past 5 years (which is when I first came to Canada). When I first got here, $100k+ salaries were rare unless you were very senior or at a select few companies. I am now looking for a job in Toronto after working for a FAANG for a few years and often see companies offering over $200k for mid-level positions. However I will say that level.fyi is a little unrepresentative because it's mainly people with impressive TCs posting on there.


If you look at the details on levels.fyi, you tend to see a bell-curve, just as you might expect if you had a representative sample.

Compensation really is as high as levels.fyi suggests, and even higher once stock growth is factored.


Understand who you are negotiating with. It’s not usually the hiring manager or recruiter who has final say over pay. Figure out who does if you can, and figure out what they care about and need to see or hear. Then equip your contact with the information they need to advocate for paying you what you want. Like if they need a clearer statement about your years of experience, or your other offers, or your alignment with the role.



You can always ask but another way is to come armed with a job offer. Considering you aren’t classified as “acceptable attrition” you’ll likely get a match or better from your existing employer. Hiring new talent is difficult and expensive so your manager has a lot of incentive to keep you around if you’re good performer.

But be warned that if your current company decides to let you go then you probably need to commit to the new company.



> That means doing getting multiple offers within the same time period before you accept one.

I need help on getting to the salary negotiation part with multiple companies at the same time though.

This is the instruction booklet for landing a lunar lander on the Moon. I need the one for the Saturn V.


1st: interviewing is a game. Treat it as such. Leetcode like hell. Tune your behavioral responses to the stated principles of the target company, and your experience/resume to the needs of that company.

2nd: Submitting resumes goes nowhere. You need referrals. Ask for them shamelessly. You don't need to know the referee. That will at least get your resume looked at. This is their game, so play it.

3rd: have an idea of the timeline to an offer for various companies. Do your Google/Facebook interviews early, more nimble companies later. Start the whole thing off with some practice interviews at companies you don't like. The goal is to have multiple offers in play at the same time.

4th: Don't tell recruiters about your other offers until it's too late and they've decided that they want you. Only tell them about offers that they might compete against (usually their direct competitors), 2 others max. If you'd work at company A for $80 b/c they have a cool product, but would need $100 to work at company B b/c they suck, when you tell company B about your offer at company A, fudge that company's numbers upward. Otherwise, you'll get an offer for $81 from company B and turn them down.


A lesson I did not learn: I dedicated each lunch hour every day for a couple of months ringing up companies and agencies. I moved jobs three times and doubled my salary in that year - which seemed good.

Then I attended a seminar - the question was asked who used agencies and who used their "network" for new jobs / freelance work.

I was the only hand up to go used agencies and the traditional job hunt.

So it's the old saw - keep a profile up - blog, project, podcast whatever, so you can use that as an excuse to stay in touch with ex-colleagues so that they might think of you when they are hiring in 3 years.

As I said not a lesson I have learned but people who earn more than me recommend it


And don't dismiss LinkedIn! It's a rolodex other people keep up to date.

Log on once a week and like posts by other folks (job posts, interesting articles, whatever). Send a congrats message as suggested by LI when someone starts a new job. Send someone a job that seems like it might be of interest to them when you see it. Post something you wrote/built/read about.

The goal is to keep in touch so that when you are ready to start looking, you aren't starting from ground zero.


Accept offer A. Receive offer B. If offer B > offer A, let company A know something has come up and you cannot continue employment. Accept offer B.

Lather, rinse, repeat for each offer. The better offer may be salary, perks, or just better work conditions. I once left a company after working there for 9 days because I got an offer working with my friend. I didn't even get a better salary and my friend ended up leaving after 3 months..


That’s not how to do it. You get offer A and B then push them to bid on you. Having competing offers gives you leverage, use that to get the best employment terms.


I think that's a recipe for becoming unemployable.


You obviously stop at some point, a 6 month gap on your resume is not a good look.


Quite literally: when interviewing, just ask for significantly more than you make. Like, 10-20% more.

My background: I'm somewhere around the 20 years of experience mark, a bit more than a quarter of that as a dev at a FAANG, a bit less than a quarter of that as a hiring manager / senior executive for startups (in one case, nearly quadrupling the number of devs in my org in a year; in another, managing a 4-5 dozen devs org).

The ideal situation is looking for a job while you have one that you are at least mostly-happy with. Or at least one where you can stay for at least another few months still -- in case you don't get the offers you want. And have a honest idea of how much you should or want to make. Ideal scenario is having close and honest friends that are peers (or even better: hiring managers) in your domain that you are comfortable talking money with.

Go through those companies in some order (most excited to least excited if you're in a hurry, least excited to most excited if you want to get the best offer possible) and interview at 1-2 at the same time, in order. Pass the interview at least up to the point where you're talking salary. In my experience, it's rarely upfront, which is an annoying waste of time if the candidate and company are on totally different planets regarding salary expectations, but having been a hiring manager, I get it [1].

Then get offers, or not. As hard as you can without pissing the company off (pissing off a hiring manager is harder than most people think, just be at least somewhat nice and reasonable about the whole thing) -- make sure to skip over HR and talk straight to the hiring manager, before and after the interview [2]. Preferably, ask to book the post-interview meeting during your pre-interview chat, so the hiring manager has extra peer pressure to actually show up "in person" (well, on the phone). Bonus points for reaching out to a senior director or (for a small enough company) a C-level executive on LinkedIn.

If you get all offers, you probably are asking less than you should. No offers, much more. 50/50? You're asking just the right amount. Not all refusals are salary-related, but for now, companies can't afford to be too choosy, so overall, market bias should be on your side. It's a time consuming process, but for a lot of people, frankly there's a 10-20% salary hike on the line every few years -- how much time is that worth to you? And don't feel bad for the "poor hiring managers" whose offers you do not accept in the end [3]. Keep in mind most of the advice on the internet is from recruiters and hiring managers that have a vested interested in candidates not shopping around (for a tangentially related topic, read https://en.wikipedia.org/wiki/High-Tech_Employee_Antitrust_L... and think about this topic, hard).

Finally, do this every year or two, even if you have no intention of leaving your current place. First, it'll leave a trail of companies (and hiring managers, that may go to a company you're a better fit for) knowing your name and wistfully thinking about the great candidate that got away. And second, it's a great thing to know exactly your worth on the market. I know folks who've doubled their income in less than five years this way.

To be fair, there's the (I believe very small) chance that your current employer will hear about your shenanigans -- and that could bite you in the ass in the (very) short term. Personally, I've never seen that, either as a candidate or hiring manager and for me personally, the risk is 100% worth it. Caveat lector.

[1] When I hired, I usually had 5-6 roles opened in my budget, and if your interview process proves to me you're a talented but more junior candidate than I hoped for, I might compromise but offer you below the bracket I was thinking about and raise the experience bar for the next hire. I usually have some kind of wiggle room of that nature, wiggle room which mostly disappears if I told you the expected salary bracket upfront.

[2] Admittedly, this is significantly easier at smaller company, where a formal HR is oftentimes just not there yet. You'll get significantly better feedback straight from the horse's mouth, including fun statements like "your salary expectation just doesn't fit in my budget"; though that either means you really asked for more than I can afford, or you did not convince me you're worth that much.

[3] First, they did a poor job convincing you to work for them and that's explicitly their job during the interview process, whether they know it or not. And second, if the company they hire for is any good, they usually only hire an absolute maximum of 30% of the candidates they interview (usually, much, much less: that FAANG I mentioned way earlier? more like 5%). If they can be choosy, why can't you be? Plus, I remember most of the candidates that I made offers to and said no to me. Not because I'm annoyed at them, but rather (until I left my hiring manager position) because I followed them on social media just in case they said something about their current job being a PITA or otherwise hint they might be looking. Telling a company no is a great way to leave a reputation of being better than they thought, and the good ones will not forget and keep the finger on the offer trigger. Keep in mind the good hiring managers also have a reputation they want to preserve, if they're even half thinking about their own career prospects...


I see a ton of jobs posted for seniors right now but almost none for juniors. Are companies being shy about talent risks right now?


Remote work will make it worse. Having worked for a remote-first company for over a decade, one thing I noticed is that every position was effectively senior level. Because you need staff able to work mostly autonomously, and at a minimum you need people experienced enough to pick up what they need to learn quickly from peers at the other end of a text chat or phone line. I'm sure we will work out how to do this better, but I think it is still a work in progress.


I had an interview this week where the recruiter was flat out and honest when I asked them "what's one thing you'd change about this company?" (something I've been asking a lot lately and being very observant to how different company reps answer) and he told me that he lamented and would absolutely change the fact that his hiring managers aren't actively seeking out or even remotely interested in trying to hire more juniors.

Gotta say, I respect the hell outta that fella for being so honest about that, partially because I've observed the very same phenomenon.


My experience is that this is an ongoing problem. For years there have been relatively few junior positions. No company wants to train people.


This also means that if you can afford to hire junior folks, you can get some real go-getters for a great (read, favorable to the company) salary.

But even junior salaries are going up, I've noticed.


You can also end up with apps that report "not hot dog." Had a situation like that with a recent college grad and for some reason my colleagues approved an absolute trash PR (as I was trying to talk the junior through why her code was garbage).

Next PR, more of the same. Now we have a $150k AND a (hopefully not more than) $65k dev fiddling with a simple change.


I think junior average salary at my company is around $75k now. Seniors are around $115k. A $40k gap is pretty big.

I don't know. I feel like most dev compensation is kind of random. Like does that senior really produce $40k more in value per year?


It should be easy for a senior to provide $40k more value than a junior employee, especially considering that a lot of the value a junior employee creates can be due to mentorship and working with senior employees.


But how do you evaluate value on a multi person and even multi team project? Is the tester or security person valued as much as the senior dev? Without them the devs work might do more harm than good, right? How do we put value on those intangibles?


I wanted to add to this. How do we evaluate value for managers? They can be making multiples of what the devs are yet they are overhead.


> They can be making multiples of what the devs are yet they are overhead.

I used to think this way. Then I became a manager. (Now I'm an individual contributor/IC again.) Oh, how wrong I was.

Managers do coordination, which is far different than building, but typically more valuable. Why is it more valuable? Leverage.

If I as an IC do the wrong thing and it doesn't get to production, it typically wastes my time (and any time needed to fix the mess, if doing so is harder than `git reset`).

If a team of people do the wrong thing, then that's an entire team's time wasted. Managers exist to ensure that a team is pointed in the right direction. Figuring this out could include meetings (oh so many meetings) with other parts of the business or customers, discussing priorities and timelines and ensuring dependencies are understood and met.

You also need to foster intrateam communication so that Bob learns that Alice has already partway solved problem X, or Alice learns that Tracy has experience in technology Y. Sure, you could rely on ICs to do this, and good ones will, but I've seen communication short circuit big issues and save lots of development time.

Is the manager's effort overhead if, by their efforts (even partially, with the help of other team members), the team solves the correct problem, rather than the wrong problem correctly?

This explanation ignores the political aspect of management (protecting your team from budget cuts, layoffs and being pulled into extraneous meetings/other efforts). I've intentionally ignored this because it was minimal at most places I've been a manager, so I can't speak out of personal experience. But I've heard about other places where this was a large chunk of the value added by management.


If the IC does the wrong thing, that could screw up the coordination between all these other parts.

I don't envy the politics, but the coordination and meetings are easy. I'd rather be doing that, but you can't get there without moving up the ladder. I was a tech lead for a year and it was probably half coordination and meetings and the other half was troubleshooting and development. It was great... except they didn't promote me to that level.


Evaluating value is usually not straightforward, unless the person was working alone it is always a subjective thing. If a junior is given a project alone, then they may provide zero value to the company if they can't complete it, but if they were paired with a senior, then together they should provide more value than the senior alone. Similarly, a manager's value is more indirect by providing a direction for the team but it adds up since they may be enabling the work of 5-10 people.

For support roles, their value comes from the costs that they help prevent. A security expert is like insurance, where they provide value by ensuring the company's product has the minimum chance of being exploited as that could damage the business in multiple ways.


Yeah, but that's kind of my point - it's not easily calculated, so how can we say a senior easily provides an extra $40k. If we are saying the manager can make a lot because they're basically directing 10 people. If you have a security expert on a team of 10 people, should they be worth similar? After all, the tool is likely worthless if it's insecure, making all those efforts by others fruitless.

I guess I'm just skeptical and jaded based on my past experiences.


Just because it isn't easily calculated on an individual basis doesn't mean that it is impossible to figure out. If you know how much revenue your group provides to the company and then look at who contributes what relatively as a good enough estimate.

Since you bring up a security team, it absolutely can be estimated there as well, what other companies have had hacks and what did it cost them? How does that compare to the risk on your product and the damage to the business if you were compromised?

Not to mention a $40k salary difference means you should be providing multiple times that difference in value to the company. Just providing $40k of additional value is a rounding error for most reasonably sized companies, I've worked on projects where two people provided >$1M of ongoing cost savings per year.


You are being pedantic developer fixated on numbers as a measure of value across the group. The world does not work this way. The business makes a decision based on what it takes to get what they need and salary can easily vary based on social aspects afterward. The number tells you something, but not everything.


"You are being pedantic developer fixated on numbers as a measure of value across the group. The world does not work this way."

Then how does it work? It seems that senior devs should make the same as junior devs if the numbers aren't tied to value.

"The business makes a decision based on what it takes to get what they need and salary can easily vary based on social aspects afterward. The number tells you something, but not everything."

On an individual level that might be true, but that doesn't address it at the aggregate level.


Actually, to me that senior salary feels low. I am on a Colorado slack and check out the salaries in the job postings (yay, Equal Pay Transparency Rule). I see a range from 100k 175k for "senior" developer positions.


Yeah, my company is cheap and it's in the Philly region. I think the range extends up to about $150k. That's just base salary, so you could roughly estimate another 10-15% in other comp. Most senior devs seem to fall towards the low end, possibly due to the way they hire and perform merit increases.


Easily, most of the time. They can make decisions quickly that juniors aren't even qualified to consider.


You need senior engineers in order to scale training people, so it's a catch-22.


It's only a catch-22 if you don't have the senior people. At least in my experience, companies have 80%+ senior and midlevel developers. The issue is that companies want to be cheap by letting other companies do the training and then taking them.


Honestly at this point as a staff level eng, not having junior levels to work with is a big turn-off. I love being able to break down projects in to tasks and not have to carry out every single one of those. Convincing one of my senior-level peers to work on a project or task can be near impossible, while the junior level folks will jump on them.


Lol I've seen this in action, lots of staff devs being architecture astronauts or diving super deep on a hot new technology, and meanwhile some intern is building the stupid webapp that actually gets used and makes money.


I would love to be an architect. It's all concepts and not really implementation beyond proof of concept. Concepts and problem solving is right up my alley. Unfortunately I need to be at least a senior dev before they will consider me. Plus it's like double my salary. Oh well.


At Mozilla at least, the architects are all some of the best programmers I know. They implement huge swaths of the architecture they propose.


That's nice. The people who are architects at my company are generally very good developers since you have to be a highly regarded senior dev to even be considered to the position. They don't work on the implementation though.


> The issue is that companies want to be cheap by letting other companies do the training and then taking them.

It's not cheap if they are willing to pay for it. That's why senior salaries keep going up. It's a tradeoff--they are willing to pay more for the privilege of not losing the time.


I don't really see it that way. Training people is more expensive than hiring a senior dev for the simple fact that you have to use a senior dev's time to train the new person anyways.


> Training people is more expensive than hiring a senior dev for the simple fact that you have to use a senior dev's time to train the new person anyways.

For the first N months, sure, but then, you have a senior and a trained junior, who is hopefully on their way to being a mid. So it's less of an expense and more of an investment in my eyes.

But like any upfront investment, there is a time when the costs outweigh the benefits, especially in the early days.


The "investment" part of the equation is where I see that model breaking down and failing. There's a lot of poaching and job-hopping, especially motivated by total comp. You could say it's always been that way, but in terms of the senior/mid/junior spread it seems like in our industry, employers would rather hire another senior than hire a junior who needs investment.


"So it's less of an expense and more of an investment in my eyes."

Too bad companies don't see it that way.


Well, I've been part of companies that have seen it that way, so they're out there!

But I agree, too few companies have that perspective.


That's why I stopped looking for an engineering job and became a technician. Started at the top of the pay scale due to my degree, which was nice.


For my current job the posting said 4 years of experience. I had 1 at the time.

Officially, my company is only hiring seniors, but if a decent junior applied (at least a year of experience inclusive of internships), I could see us taking them, especially with the right tech stack.

So, apply anyway.


This bums me out. On two levels:

   * The company doesn't have a clear idea of what they want, so they fall back on 'years of experience'. Lazy. I've written job descriptions and I know it's hard, but c'mon.
   * This will turn off talented folks that might make great team members (esp folks who don't apply unless they have 100% of the qualifications).


It is a more a case of what they want vs what they are willing to/forced to take in the current market.

I doubt they would openly consider that person, but when there is a candidate in front of them who has reasonably passed some questions and is willing to accept, I would hope they would budge.


>esp folks who don't apply unless they have 100% of the qualifications

This group disproportionately including women and excluding referrals (people who have the same experience, hobbies and education as your current employees)

- got his last job via referral.


I work for a company that has been pretty strong on pipelining in people as junior engineers and progressing them within the company, but even the direction we had while working remote from covid is that training in juniors while out of office is something that higher ups don't want to deal with (even if they would have little involvement in the process, such is corporate bureaucracy), so they're reticent to open positions to more junior level developers, and grads are pretty much right out unless they've interned with us previously.


At least from my perspective. It is a combination of needing a certain number of senior level employees to mentor junior employees and to lead projects and we have a good pipeline of junior candidates through our co-op program such that there is no need for us to post a job when we have known good options.


It's interesting reading this thread after the scores (hundreds?) of previous threads saying one cannot negotiate with employers because of power and information asymmetry.


Society has moved beyond possibility/impossibility (i.e. behaviors prohibited by law and lack of opportunity) and we've moved on to decrying the emotional difficulty in doing things that are hard because they feel awkward or uncomfortable, like asserting one's self and asking for a raise.


It's the only time the candidate has more power than the employer because the latter showed their hands.


I'd love to, as I'm really tired of my current employer, and they're definitely taking advantage of me, but I resolved to never waste my time with leetcode garbage again... which means I either stay where I'm at, or exit the industry entirely.


What? Do you have former co-workers who have moved on who'd love to have you at their new place?

If so, I bet they can help you get past the coding tests.


Unfortunately the people I have (had?) a good enough relationship with where I feel like I could ask for favors like that just moved on to other big tech companies that all do the same leetcode hazing. Definitely would have been something I'd have tried otherwise though.


Well, these folks may know folks at places that don't do the hazing. I'd reach out if I were you and "just have a coffee" and explain you're looking but want to avoid the leetcode grind. They may have some advice or connections.

An alternative is to grow your connections by going to meetups or something similar (I know, more unpaid labor! But it will pay off.) After 2-3 months, you should know the regulars and can have the same conversation with them. For bonus points, offer to help out--meetups I've encountered are usually looking for some kind of help, whether that be running a meeting, finding sponsors, helping speakers or something else (even, in the before times, setup and teardown of chairs/meeting space).


what is it about leetcode that makes it a waste of time?


Absolutely no relation to my technical abilities for any job I'd be looking at (besides, of course, passing an interview to begin with).

Please don't get me wrong: if it was just a few days of practicing, I'd just get it over with and do it. But realistically, with the leetcode arms-race that's gone on for the past few years, where you're expected to solve multiple hard-level problems back-to-back, with no assistance, and as quickly as possible (ie: under 30 minutes), I'm staring down the barrel of probably 3+ months of full-time grinding to memorize as much of them as possible.

Just not worth it. I'm terribly depressed as it is already, and that would just make it much worse.


what if you just did it as a hobby/fun thing to do once or twice a week...?

maybe after a while it would be second nature once a real opportunity presented itself?


I am very sceptical of the article, the fundamentals of most companies didn't change drastically. It seems unlikely that they would suddenly be able to cover all these expenses, in the form of larger sallaries. The article mentions the dot-com era, now that escape from reality didn't last very long.


A while ago I switched to a role that was interesting, but involved a decrease in compensation, but not a month had passed and I was included in a company-wide pay increase.

Overall currently I don't hate my job anymore and the salary is slightly better. Best decision I made this year.


A buddy of mine who is a cissp just move jobs, got a 30k raise and a 100k signing bonus


What's well paid for FAANG senior? 300k? 400k? $500k+? Are levels.fyi's numbers out of date?


Got some RSU vesting November. Should I wait?


Maybe. It might be worth looking, tell any folks with an offer how much you’d lose, and either leave early if they add to it, or accept an offer with a start date after the vest.


If that's a 1 year cliff, yes


Non-paywall please




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

Search: