I don’t follow. In this case, the law required everyone to do what they did: provide an update, warn subscribers to update, and eventually drop devices that chose not to heed the warnings.
> Under the federal Emergency Service Call Determination, all operators must block handsets that can't complete Triple Zero calls if they remain unpatched for 28-35 days after the first warning – a rule TPG says it followed.
How would you even begin to pin down what “customer safety” means here? Isn’t it very much in the spirit of safety to say “if it can call at all, it must be able to place an emergency call; if it can’t place an emergency call on the current emergency calling scheme, you have to prohibit all other calling too”?
Plus, safety from unpatched devices on the customers’ network is safety too, right? Would it be “safer” to force the system update onto handsets without letting the subscriber decide?
Plus, just because something is a “priority” doesn’t mean you’re good at it…
What I was saying is that at least in the US any bad thing that happens to a company can be treated as securities fraud. Company had security breach but they said they follow best practices. There likely will be a lawsuit saying that they mislead investors. Not saying it makes sense more pointing out that companies often do get sued for statements they make.
> Fastmail has some of the best uptime in the business, plus a comprehensive multi data center backup system. It starts with real-time replication to geographically dispersed data centers, with additional daily backups and checksummed copies of everything. Redundant mirrors allow us to failover a server or even entire rack in the case of hardware failure, keeping your mail running.
I always recommend this article: https://www.kalzumeus.com/2012/01/23/salary-negotiation/
I think this topic is super important and I’m really glad I didn’t follow advice of saying your “expected salary or expected +20%”. Here my anecdotal SWE salary history:
Worked at a startup for a bunch of years making 90k by the end
Got offered a place at FAANG. Recruiter pushed me a little bit on expected salary but I didn’t give one using all the approached from the linked article. They offered me 250k. I would have never ever assumed that I can be payed this much.
Instead of accepting I again followed the advice and asked for time to think. I had no counter offers but spoke to the recruiter thanked them for the offer and asked if there’s room for improvement. And they were nice and reasonable, they said yes if there are counter offers or you are leaving unvested stock behind. I was leaving unvested stock in an unprofitable startup, but I wrote the amount and vesting schedule and got offer bumped by 25k.
After working there I considered going to trading shop. Used the same approach and they offered 400k. Again this number seemed insane at the time. So I asked for more, this time I had much lower counter offer. But I could use it as some form of leverage. They upped the offer by 150k by the end (this is sign on+ salary+guaranteed first year bonus).
I am writing this not to show off the numbers, but to show other engineers that your idea of how much you should be payed could be completely wrong. Let the employer give information first and don’t back yourself into the corner by revealing your ignorance of market or minimum comp you are willing to take.
This just seems incredible to me, to the point where I almost can't believe it. Throughout my 25+ year career, I've 1. never been positively surprised by the number I got, and 2. never had a company increase from their starting offer. It's always very close (within ~10-20%) to what I'm already expecting, plus "Take it or leave it. There's a line of 50 behind you willing to take that compensation." What are the exact mystical words you are saying to get these kind of results? Not that it really matters at this point. I'm pretty much at the tail end of my career and making a small fraction of the numbers you're posting.
You can check levels.fyi large faang l6 and above get those numbers. I think there is a massive gap between faang and similar and smaller places. When I got the recent crazy offer I interviewed in what I thought were good smaller companies and several offered me below my current salary. And a couple were in 110k range with absolutely no room for negotiation.
L6 for Amazon is Senior, L4 is mid and L4 is junior. Below that are the non “blue badge” employees - factory workers, drivers, etc.
I would think that about 20-30% are “senior”. I worked at AWS for 3.5 years until last year. I would assume the distribution is about the same thing for most other tech companies.
Doing a quick bit of research, you’re not to far off. My back of the envelop math is about 7.5% work at FAANG + Microsoft. Maybe 10% if you include other companies that pay in that range
I think your assumption is way off. From what I've gathered, each team typically has a single L6 engineer (some have zero), and each independent organization has a single L7 engineer. We're talking one senior engineer per 9-12 engineers, one principal per around 50 engineers.
Senior engineers tend to have a 1:1 correspondence with software development managers, whereas principal engineers have a 1:1 correspondence with senior managers.
> I would think that about 20-30% are “senior”.
You should check your notes, as they are way off. Even if you Google the topic you get 15% senior engineer, 2% principal engineers. I know for a fact that flagship organizations within Amazon have a single principal engineer, 4 or 5 senior engineers, and around 50 L4-L5.
My only anecdote is from ProServe where I use to work. But admittedly, I forgot that my part of ProServe didn’t really hire L4s. We would take a very few as interns and give them return offers.
L6s are tasked with interfacing with higher-ups, such as product owners and senior managements. They coordinate with principal engineers to design and deliver critical features. They help communicate and coordinate tasks with SDMs about the work that other SDEs need to do to reach goals.
By design, they are normally one senior SDE per team, and a single principal engineer per organization. They are there so that senior managers and executives can discuss plans, goals, and roadmaps. You definitely do not need a team full of interfaces.
I think the main thing his experience showed is that if you want to make a lot of money, you need to position yourself to move into industries that can pay a lot. For software engineers that means 3 major options:
1. The US tech giants (the "FAANGs"). These companies are so insanely profitable and they can afford to pay a lot, though they all have become more cost conscious in the past couple years.
2. Finance. Again, they've got a lot of money, and especially for trading firms it's usually more straightforward to assign value to individual developers than in other areas.
3. Currently there is a big desire for AI talent, so if that's your industry one of the big startups (OpenAI, Anthropic) or one of the smaller well-funded ones should be able to pay you well.
So I would say this person didn't so much "climb the ladder" as opposed to position themselves well to get hired at other companies that would pay them a lot more. And I think this person did it in perfect order, i.e. it's been said a lot on HN how "the startup deal" (i.e lower salary but more equity) is hardly ever worth it for IC software developers these days if you can also get a FAANG job, but it can be a great stepping stone to getting experience that leads to a better paying job at companies that can afford to do so.
I was leading enterprise app dev + AWS projects at a small startup making $x. I got a remote job working at AWS (Professional Services) as a mid level (full time direct hire) consultant making $x + 65K working remotely.
I got Amazoned and a year later, now I’m a “staff” consultant (full time) at a smaller consulting company making the same as I made as a mid level consultant at AWS.
If I were to work at GCP as a “senior” (one level down) I would be making $150k - $200K more than I am making now. But even that department has a return to office mandate. Maybe I would try it after getting a few more years under my belt working at this level
I think what made the difference in both places is that I had good projects I could talk about and the tell a good story of this is the business problem, this is what we did, this is how I contributed, this is the result. I know this is not super helpful and sounds like standard STAR stuff. I was lucky because I was given a chance to deliver large and important projects and I think this is what they liked.
This comp is high but once you get into l7 and above or get senior roles in trading firms numbers become even more crazy.
> to show other engineers that your idea of how much you should be payed could be completely wrong.
Defintiely could be. But not in this economy. I'll take what I can get.
But in general, it really is a matter of knowing your worth and what they could pay. IF you have a certain noteriety in a community of a domain and you get an offer, understand how much leverage you have vs. yet another front end web dev. Let alone 99% of students out of college.
Notice I’m not suggesting that people go for “hard” negotiation. You don’t loose anything by not revealing comp early. Worst case you will get offer that’s too low. But best case you get offered above what you expected.
I think another factor I didn't talk about was pay transparency. My state has it and it's slowly expanding so outside of like, Netflix's "100-600k" range you don't really have to play many games here. Know your worth and pick in that range internally. Go above if you really feel you can.
I do want to emphasize being careful with current times, though. I've heard of very mild negotiations (were talking a 5k counter offer or an extra week of vacation time) leading to rescindings in 2023. Which is unheard of from 2022 or before. They'd at least hold firm in the worst case. But we're still in the middle of this circus that is probably going well into 2025.
I see "know your worth" advice pretty frequently, and I tend to think it is pretty bad advice for software developers. "Your worth" is completely dependent on the business the employer is in, and then of course a lot of that "worth" can be due to the employer already having a huge market (e.g. I've seen small decisions result in multiple millions of additional revenue, but those multiple millions were only possible because the employer was already pulling in billions).
Maybe I'm splitting hairs, but I think better advice is to simply do a lot of research on what comparable salaries are for the position you're looking for. There are tons of information sources online now that can give good info on accurate salaries, including breakdown of cash, bonus, equity, etc.
To your last point, you better be aware of who has the leverage when you start negotiating. If there are a hundred other qualified candidates, and you really need the job, going into "battle mode" over 2-3 percent is not a good idea. On the flip side, if you really are that "purple squirrel" for which there are few if any compliments, go for all you can get.
I think we're in general agreement. I say that's what "know your worth" is about. If you choose a web dev position, you're probably less vital than someone who works deep down in compilers.
Your worth is a mixture of (but not limited to) your expertise and how you sell yourself, the supply and health of the market, and what markets are offering vs. What they can potentially pay. Too many factors to give universal advice. So you'll need to fill in the variables based on your current experiences.
Right now the market is horrible and I'm not a purple squirrel. So I want to take what I can get for now and just focusing on relieving short term debt over long term plans to improve myself.
Sure. that's part of "what they could potentially pay you". Startups don't have money for 400k engineers without crazy VC money and a ton of confidence. For the rest, they offer equity.
If that's what you seek or think is your worth is an entirely different discussion.
at least one third if not half of the job applications i have come across have a required form field for expected compensation. initially i just wrote 0 or something obviously bogus, but i got concerned that this was used as a filter. so now i am not sure what to do. for european companies it is probably ok to just write something as they are unlikely to have a much higher range anyways. it really helps though if they actually post their range.
Germany needs to regulate a mandatory posting of the pay range with every job being posted. The power dynamic is very skewed towards employers because when you send in your application, you must also indicate your pay expectations but employers (except select few) never post the pay ranges. In the end what happens is that, two seniors in the same team will earn in 50-70% difference while doing the same duties.
If you are serious then I think trading firms are actively hiring. There’s a bunch of them in London jump, Jane etc. comp will be very high there. I think faang hiring is slower now, but not sure
Nowhere in Europe unless you want to never have free time during daytime. If they don't location adjust, they expect you to be available in their timezone.
If you're OK with that, just visit the US and make some friends. Go to meetups and conferences. You will definitely find something much better than any EU offer (while still wildly underpaid in California) - that's your starting point. Do a good job, underpromise and overdeliver, and ask for referrals.
What you call "location adjusted bs" is actually just supply and demand.
The supply of good, experienced software developers willing to work for $100k in the Bay Area is practically non-existent when "normal", nothing-special suburban houses there can go for a couple million. There are a much higher supply of developers willing to work for that in Poland because the CoL is so much lower.
Similarly, a gigantic reason American companies hire overseas in the first place is because wages are lower outside the US. Without that wage differential most of those jobs wouldn't exist.
Similar: My first job out of college was ~a year after the Great Recession, so everything I looked at said to expect ~$35k starting salary. Maybe I could've asked for $40k if I'd followed salary negotiation advice. Instead I didn't volunteer anything and the first offer I got was $50k.
I started my first job in 2008. I had a friend who got a job doing software development for a city government at $60k. I interviewed at a big tech company. I don't remember even being asked about my salary expectation. The offer came at $75k. I'd been expecting 40-50, based on what the career center at school was telling me.
I’ve had similar excited experiences. On one FAANG offer in 2020, I asked for time to think, as you mention. I already had awareness of pay bands and an idea of the range for this particular role from levels.fyi.
When I came back to the recruiter, I asked how much room she had to negotiate, and asked if she could put me “in the middle of the band”. She immediately said yes and it resulted in a bump of $75k/yr or so.
The thing to remember is that recruiters key metrics are about hires. They desperately want to get people in the door, especially after going through all of the effort to schedule interviews. They will happily help you out within reason.
In my experience this really depends on the type of the team. If it is a product team it is likely to have a lot of junior developers and not too many senior ones. If it is some deep Infra/backend team you can have a team that is mainly >L5. I was surprised when picking a team in FAANG the choices were you either join as a tl of a very large team of junior ish devs or you join as TL of a small team with mainly senior devs.
They could play online with micro stakes. The smallest I know is 1p/2p game. Has a lot of players, people take it pretty seriously as these are the stages you play when learning. And you need about 50 buy ins (100$ total budget) to have enough to learn. This is not super cheap but can easily last for a year or more assuming the person is actually learning to play rather than doing mad gambling.
50 buyins is pretty reasonable for an average (which means losing because of the rake) player for a year. You can plug in the numbers into one of the poker variance calculators. At 1 hour per day (60 hands), 10 BB/100 rake, NLHE 6-max cash games only, you get the 95% confidence interval of -5150 BB to 770 BB after 1 year.
I really enjoyed reading Time to Think: Listening to Ignite the Human Mind. It is more for the professional setting but I think a lot of it is applicable to personal life as well.