A 10 minute conversation could result in an additional $10,000 per year. Combined with compound interest, this has a significant impact! Negotiate your salary:
- Know what's being offered: base salary, equity, bonuses, benefits.
- Know your worth.
- Get multiple offers.
- Ask high and don't offer a minimum.
In More Details
1. Know What's Being Offered — there are many components being offered, some are easier to negotiate and may be more important to you. Others may be non-negotiable, but could tip the scales to companies that offer them. Think about what's important to you:
- base salary
- equity (public, private)
- bonuses (signing bonus, annual bonus, moving bonus, etc...)
- financial benefits (401k match, ESPP, insurance, HSA, etc...)
- other common benefits (paid time off, remote work, level of impact, etc...)
2. Know Your Worth — we're fortunate to work in a field with high demand. This has driven up the price for good software engineers. Before negotiating starts, get a rough estimate of what salaries will be like. See Levels.fyi, AngelList salaries, or the H1B Salary Database.
3. Get Multiple Offers — one of the best things you can do for leverage (besides acing the interview process) is to get offers from multiple companies. Don't interview at companies you don't want to work for. But be open to interviewing at more than one.
4. Don't Offer a Minimum and Ask High — you'll be asked either your previous salary or your expectations. As a general rule, it's best not to answer. Wait for their first offer and negotiate from there. Target a high number. The best way to get a higher number is usually by letting them know about competing offers.
Further Reading
Here are two of the best guides I've read for Software Engineers:
While this is a finance website, a career isn't entirely about finance. Check out Key Values to find companies that share your values.