How I Answer “What’s Your Expected Salary?” as a Software Developer
One of the questions that can make even a good interview suddenly uncomfortable is:
“What are your salary expectations?”
You can be asked this during the first HR call, before you've even spoken to the engineering team.
For developers early in their careers, this question can be especially difficult. You don't want to quote a number that's too low and undervalue yourself, but you also don't want to give an unrealistic number before understanding the role.

Over time, I’ve started looking at this question differently.
Instead of treating it as a question that requires an immediate number, I treat it as the beginning of a conversation.
Don't Rush to Give a Number
When a recruiter asks about salary early in the process, my first preference is to understand the company's range.
A simple response can be:
“I’m looking for compensation that is aligned with the role, responsibilities, and current market standards. Could you share the budgeted range for this position?”
I like this approach because it doesn't make the conversation about a random number.
A software developer role can mean very different things depending on the company. A role requiring Java, Spring Boot, SQL, REST APIs and system design will have different expectations from a role focused mainly on frontend development.
So before deciding what I'm worth, I want to understand what the company expects from me.
Research the Market Before the Interview
If the recruiter asks me for a number and the company doesn't provide a range, I wouldn't want to guess.
Before an interview, I would research similar roles based on experience, location, technology stack and company size.
Platforms such as Levels.fyi and Glassdoor can be useful starting points. For the Indian market, sites such as AmbitionBox can also provide additional context.
The important thing is not to take one salary figure as the truth.
Instead, look for a pattern.
If several sources suggest that developers with a particular skill set and experience level are generally being offered within a certain range, that gives you a much stronger foundation for your expectations.
Then I can say something like:
“Based on my research and the requirements of this role, I’m targeting a compensation range of ₹X–₹Y LPA. However, I’d also be interested in understanding the range you have budgeted for the position.”
Now the number has a reason behind it.
Don't Just Look at CTC
There is another important point, especially when interviewing in India.
CTC is not the same as take-home salary.
A package might include fixed salary, variable compensation, employer PF contribution, gratuity, joining bonuses and other components.
So if a company says:
“The package is ₹6 LPA.”
I wouldn't immediately assume that means ₹50,000 per month in hand.
Instead, I'd ask:
“Could you please explain the fixed and variable components of the CTC?”
That one question can make a huge difference when comparing two offers.
A ₹6 LPA package with a high fixed component can be very different from a ₹6 LPA package where a significant portion is variable.
What If They Keep Pushing for a Number?
Sometimes recruiters won't give you their range.
They may simply ask:
“What is your expected CTC?”
If I have researched the market and understand the role, I would give a reasonable range rather than a single rigid number.
For example:
“Considering the responsibilities of the role, my technical skills and the current market range for similar positions, I would be comfortable with something around ₹X–₹Y LPA. Of course, I’m open to discussing the overall compensation depending on the role and responsibilities.”
This keeps the conversation flexible while still showing that you have an expectation.
What I Would Avoid
One answer I would avoid is:
“Anything is fine.”
Being flexible is good, but having absolutely no expectation can sometimes work against you.
I would also avoid giving a completely random number just because I feel that it sounds impressive.
And I definitely wouldn't exaggerate another offer just to negotiate.
Negotiation is important, but credibility is more important.
Salary Is Only One Part of the Decision
Something else I've learned is that compensation shouldn't be the only thing I evaluate.
For an early-career developer, the quality of the engineering team, mentorship, technology stack, learning opportunities and the kind of problems you'll solve can have a huge impact on your career.
A slightly lower-paying role where you work with strong engineers and build real production systems can sometimes provide more long-term value than a higher-paying role where you're not learning or growing.
That doesn't mean you should accept an unfair salary.
It means salary should be considered alongside the career value of the opportunity.
My Simple Approach
If I'm asked about salary during an early interview, my approach is straightforward.
First, I try to understand the company's salary range.
If the range isn't available, I research the market and understand what similar developers are earning.
If I'm required to provide an expectation, I give a realistic range rather than an arbitrary single number.
And when an offer finally comes, I look beyond the headline CTC and understand the fixed salary, variable pay and other components.
The goal isn't simply to get the highest possible number.
The goal is to make sure the compensation is reasonable for the skills, responsibilities, experience and market value involved.
Final Thought
Salary negotiation doesn't have to be aggressive.
You don't need to sound demanding, and you don't need to avoid the question completely.
You just need to be prepared.
Know your skills.
Know the market.
Understand the role.
And most importantly, don't undervalue yourself just because you're early in your career.
How do you handle the “expected salary” question?
Do you prefer asking the company for its range first, or do you share your expected range immediately?
I’d love to hear how other developers approach this.
Top comments (0)