Negotiating feels uncomfortable, but it is a normal part of hiring. Learn how to research your range, what to discuss besides salary, and what to actually say.
Many developers accept the first offer because negotiating feels rude or risky. In reality, most companies leave some room in the offer and expect a reasonable counter. A polite, well-prepared request rarely harms an offer.
This guide covers what to do before, during and after the conversation. It is general advice, so adjust it to your country and company, and read your contract carefully.
The steps in order
Step 1: Know your range
You negotiate better when you know what similar roles pay. Look at salary surveys, public job postings that list ranges, and ask peers you trust. Think about three numbers:
- Target: what you would be happy with.
- Ask: slightly above the target, leaving room to settle.
- Walk-away: the lowest offer you would accept. Decide this privately, before the call.
Step 2: Look at the whole package
Salary is only one part of what you get. If the base pay is fixed, other items may still be flexible.
| Part of the package | What to ask about |
|---|---|
| Base salary | The fixed monthly or yearly amount |
| Bonus | Is it guaranteed or based on performance? How is it paid? |
| Equity or ESOPs | How many, vesting schedule, and what happens if you leave |
| Joining bonus | A one-time payment, sometimes to cover what you lose by leaving |
| Notice period | Whether they can buy out part of your current notice period |
| Growth | Title, review dates and learning budget |
| Flexibility | Remote or hybrid days, working hours, leave |
Step 3: What to say
You do not need clever tactics. Be warm, specific and brief. A good structure is: thank them, show enthusiasm, make one clear request, and give a reason.
Thank you so much for the offer. I am excited about the team and the
work on the platform.
Based on my research and my experience with distributed systems, I was
hoping for a base salary closer to X. Is there flexibility on that?
I am keen to make this work and happy to talk it through.Mistakes to avoid
- Accepting on the spot. Saying “Thank you, can I have a day or two to review?” is completely normal.
- Lying about other offers. If you mention a competing offer, it must be real.
- Making it personal. Base your request on the role and your skills, not on your rent or bills.
- Negotiating by text only when you can talk. A short call often goes better than a long email chain.
- Ignoring the details. Read the contract for notice period, non-compete terms and bonus conditions.
If the answer is no
Sometimes the company truly cannot move. That is fine. You can ask for something else, like an early salary review in six months, or a clear path to the next level. If the offer still works for you, accept gracefully. If it does not, decline politely and keep the door open.
Whatever you agree on, get it in writing before you resign from your current job.