Skip To Main Content

software engineer salary negotiation do’s and don’ts

hands holding cubes with inscriptions dos and don’tshands holding cubes with inscriptions dos and don’ts
Gayane Hakobyan
written byContent Strategist, Remote Lifestyle & Career, EPAM Anywhere

With a focus on remote lifestyle and career development, Gayane shares practical insight and career advice that informs and empowers tech talent to thrive in the world of remote work.

With a focus on remote lifestyle and career development, Gayane shares practical insight and career advice that informs and empowers tech talent to thrive in the world of remote work.

Software engineer salary negotiation may be one of the hardest things you have to do in this profession. In the tech industry, company recruiters and negotiators do salary negotiation for a living, which puts you at a disadvantage.

Career growth for software engineers has many opportunities, but they are not always easy to get, and that’s before you throw in salary negotiation challenges. You’ll be happy to know, though, that you can prepare for it.

This article examines salary options, cases when you might need to negotiate salary, negotiation tips, and what to do when things don’t go your way.

get the salary you deserve at EPAM Anywhere

Apply for our competitively paid positions and secure a job offer with one of the leading software engineering companies in the world.


Understanding your software engineer salary options

Before we dive into how to negotiate your salary as a software engineer, let’s break down the engineer compensation packages you will likely encounter, what they mean, and how they add to your overall potential earnings.

1. Base salary

The base salary is a fixed amount of money you earn annually as a software engineer, regardless of factors like performance. The base salary is a function of your experience, education, location, and skills. It varies depending on your years of experience in the field and how relevant it is to your new job.

2. Performance bonuses

Performance bonuses are additional payments based on team or individual achievements, including meeting deadlines, exceeding expectations, delivering high-quality work, and solving complex problems. The bonuses are usually discretionary and depend on the employer’s policies and budget.

3. Sign-on bonuses

A sign-on bonus (or a signing bonus) is a one-time payment you may get as a software engineer joining a new company or accepting a job offer. Sign-on bonuses are often intended to attract and keep talent, especially in highly competitive markets or high-demand roles. The sign-on bonus may also compensate you for lost benefits, relocation costs, or salary gaps.

4. Benefit packages

Benefit packages are non-monetary perks from an employer that a software engineer may get. They include retirement plans, health insurance, paid leave, tuition reimbursement, and child care assistance. Benefits packages are often meant to enhance your satisfaction and well-being and vary depending on company culture, size, and industry.

5. Stock options

Stock options are sometimes used as a form of equity compensation, giving the software engineer the right to buy a certain number of shares of the company’s stock at a predetermined price within a specified period. Stock options are used as incentives and reward employees for contributing to a company’s success. Stock options are also a great way for companies to increase the loyalty and retention of employees by giving them a stake in the company’s future. The value of stock options depends on the stock's market price and the option agreement's terms.

When you might need to negotiate your software engineer salary

Salary negotiation for a software engineer job can yield better results when you time it right. In this section, we explore the most opportune times to consider negotiating your software engineer salary.

You’re considering a new job offer

When you receive a new job offer, it represents an opportunity for growth and gives you options for negotiating. How? By leveraging the new job offer deal, you can showcase your market value and potential by highlighting the skills, achievements, and experience you bring to the table.

A competing offer gives you the bargaining power to negotiate more than your base salary and can include everything from benefits to perks that are important for you, such as bonuses, stock options, and flexible hours.

You’re negotiating a counteroffer

Getting a new job offer is not simply taking what the new employer offers because it is more; it’s a chance to get your current employer to reconsider your salary. Sometimes, it’s not about leaving for the sake of it but about getting the best deal out of your current situation.

A counteroffer allows you to negotiate with your potential employer for a better salary than what is offered by leveraging the job you already have and negotiating with your current employer regarding matching or even beating the new offer.

Negotiating a counter offer presents two major opportunities: moving on to something better or improving what you already have through salary negotiation.

You’re planning to relocate on the job

Relocating is a hectic time that can be made easier by negotiating. There are several things to consider when relocation is on the cards, including:

  • The costs of living and taxes in your new location
  • Relocation expenses like moving fees, housing deposits, and travel costs
  • Adjusting to a new work environment and culture

There are more considerations, but these are the major ones that could impact your productivity and satisfaction the most.

You’d like to go part-time

The transition from full-time to part-time is an opportunity to change your work-life balance. You could go part-time within your current work environment or seek out remote jobs that align with your desire to go part-time.

Negotiating when planning to transition to part-time can allow you to maintain or even increase your hourly rate by demonstrating the quality and efficiency of your work as a part-timer. You can also negotiate more flexibility and autonomy in your workload or schedule and enjoy the benefits of having a balanced personal and professional life.

You’re up for a promotion

Promotions don’t always come with all the benefits you want, so flexing your negotiation skills here is a good idea. Promotions are an indication that you have:

  • Demonstrated your skills and achievements to your employer and earned their recognition and trust
  • Taken on responsibilities and challenges that call for your expertise and skills
  • Aligned your career goals with the company’s vision and mission and shown your commitment and potential

All these things give you the leverage and room for talking to your boss about career growth in your upcoming role, based on what you have achieved to get you that far.

Now that you know when to initiate a negotiation, let’s review some of the do’s and don’ts of negotiating your salary.

How to negotiate your software engineer salary: 6 do’s

These do’s will help you prepare your negotiation strategy and achieve a favorable outcome.

1. Do your homework

Start by finding out the salary range your role or skills command, for example that specific to DevOps engineers and software architects. You can use online sources like Indeed, PayScale, or Glassdoor to find out the average salary of people in your level, location, or industry.

This helps you develop realistic salary expectations and a data-driven approach to what to ask for. Without a compass to point you in the right direction, you might undersell yourself or get priced out of contention by going with a non-justifiable number to your employer.

“Reiterate market value: it's essential to research and understand the market value for your position and experience level. Use this information to reinforce your request for a higher salary, and explain how your skills and experience align with the market value for the role.”

Deepan MuthusamySenior Software Engineer, EPAM Anywhere

2. Consider other benefits on the table

Consider additional benefits like work-from-home options, extra vacation days, paid time-off, bonuses, and stock options. Look at your total compensation as a full package. Some benefits may be more valuable to you than others, depending on your personal and professional goals.

Doing a deeper dive into what the benefits entail can help you set the tone for how satisfying your job will be for the duration of your contract. If you’re passing through the hiring process, you can prepare questions to ask the recruiter during the interview for more comprehensive clarifications.

3. Let the employer lead the numbers

Revealing the number too early may risk underselling yourself or pricing yourself out of the market.

Avoid saying the salary you want and wait for the employer to make the first offer or at least give you a range before revealing what you want to be paid. This gives you more leverage and information to negotiate from.

4. Focus on what the company wants

Companies want to know the value a software engineer can add to their operation before they are willing to discuss salaries. This means you should highlight your skills, experience, and achievements and how they can help the company solve its problems, meet its goals, and grow. You should show enthusiasm and how well you would fit into the company vision and culture to be more attractive and persuasive.

5. Advocate for yourself

With your skills and qualifications, you shouldn’t be afraid to ask for what you want and negotiate confidently. To help you with this, prepare a one-sheet document summarizing your value proposition, with qualifications and accomplishments to boot. The document can be a reference during negotiation and helps showcase your unique selling points.

“When it comes to salary negotiations, prove your worth. Give examples of experience, especially an unusual one, such as a speaker or conference organizer. It's an out-of-the-box experience, it's attractive, and your price goes up. Of course, before the conversation (if it is a conversation and not a letter), think over and rehearse these arguments well in order to look confident and prove your benefit to the company.”

Nikita ShevtsivSenior Software Engineer, Certified Technical Interviewer, EPAM Anywhere

6. Practice your negotiation beforehand

The last thing you want to do is appear unprepared or lack confidence during the negotiation process. You should mentally and emotionally prepare yourself by doing mock sessions with a friend, mentor, or coach. This will help you anticipate some of an employer's questions or objections. Do not be afraid to ask for help from those who might know better or have insights into what you can expect.

“Managers are people like us, and they are very diverse and have different personalities. So my advice here would be, imagine role-playing as your manager. What kind of arguments would be valuable for them that would allow you to stand out vs other similar cases? (Remember: at some point the budget is limited.)”

Diego ParraChief Software Engineer I, EPAM Anywhere

Software engineer salary negotiation: 5 don’ts

What shouldn’t you do? Let’s find out:

1. Don’t be too passive or aggressive in your negotiation style

Find a balance between assertive and respectful to avoid looking rude or pushy. You should also avoid making threats or ultimatums as they are not usually looked upon kindly. Your ideal outcome is to aim for a win-win that benefits you and the employee while maintaining a positive relationship.

2. Don’t accept or reject offers on the spot

In almost every scenario, you should ask for time to consider an offer instead of accepting or rejecting it immediately. Depending on the urgency, ask for a reasonable amount of time (24 hours or a few days). Don’t forget to express your gratitude and interest in the offer and inform the hiring manager when you intend to get back to them.

When you do get back to them, get clarification on details so that you are fully informed. Take a look at this handy guide with questions to ask before accepting a job to help with that process.

3. Don’t come up with a lowest acceptable offer

Software engineers may feel it necessary to come up with a lowball offer they will take without considering other factors. Look at all the compensation factors before taking the job.

You can ask for time to look at any iterations of the deal you’re offered to ensure you have more opportunities to advance your career and balance work and life. Weigh the pros and cons of each offer and decide what trade-offs you are comfortable with.

4. Don’t lie about your current or previous salary or competing offers

Do not inflate or fabricate your salary history or other offers to gain bargaining power or leverage you do not have. This is not just unprofessional but also unethical and could backfire if the employer were to find out.

Companies often do background checks and reach out to references to learn more about you. You should strive for honesty and transparency to avoid ruining your reputation and damaging your credibility as a professional.

5. Don’t forget to get everything in writing and confirm the details

Get everything in writing so you have an easy reference for what you agreed to and can know for sure that what you spoke about verbally is enforceable. Do not rely on verbal agreements or promises, but rather ask for a written offer letter that outlines all the terms and conditions.

Make sure there are no discrepancies in the letter about what was discussed during the negotiation. You should also ask any questions about the offer letter before signing it and accepting the job.

do a reality check of your salary expectations with us

Apply for an opportunity to talk to our hiring managers and check if your desired salary is realistic.

let’s start

Didn’t get the raise? Consider a career with EPAM Anywhere

So, what happens when you don’t get that raise and just have to do something about it? Putting the fate of your career in your own hands is a good way to do it, and that’s where EPAM Anywhere comes in.

Remote working has changed how and where we find opportunities. At EPAM Anywhere, we connect modern tech talent with our top full-time job opportunities that allow you more growth, continuous learning, and freedom.

You can look forward to social protection, remote work, competitive compensation, long-term projects, guided career growth, free learning, individual project matching, and more. Your future doesn’t have to feel like one long chore; try EPAM Anywhere today to find remote IT jobs.

Gayane Hakobyan
written byContent Strategist, Remote Lifestyle & Career, EPAM Anywhere

With a focus on remote lifestyle and career development, Gayane shares practical insight and career advice that informs and empowers tech talent to thrive in the world of remote work.

With a focus on remote lifestyle and career development, Gayane shares practical insight and career advice that informs and empowers tech talent to thrive in the world of remote work.

our editorial policy

Explore our Editorial Policy to learn more about our standards for content creation.

read more