8 min read
recrutamento
gestão de equipas
cultura técnica
saas
portugal

Hiring Senior Developers in Portugal: Criteria, Pitfalls and What Actually Works

How to identify and hire senior developers in Portugal without wasting time or money. Technical criteria, red flags and processes that work.

Hiring Senior Developers in Portugal: Criteria, Pitfalls and What Actually Works

Hiring Senior Developers in Portugal: Criteria, Pitfalls and What Actually Works

TL;DR

  • Senior is not a job title or years of experience: it's demonstration of technical decision-making, mentoring and problem ownership. Many with 12 years on their CV cannot architect an API with coherent rate-limiting.
  • The typical Portuguese recruitment process (CV + generic interview + LeetCode puzzle) systematically fails to identify real competence. You need a technical phase that simulates actual decisions.
  • The salary gap between what you expect to pay (€35-45k) and what the market practises (€55-75k for proven seniors) is real. You should be prepared to increase budget or redefine what "senior" means for your company.
  • Generalist recruitment consultancies in Portugal charge 20-25% of the first year as a fee. They rarely have technical expertise to filter. You'd be better off hiring technical consulting (€2-5k) to validate candidates.
  • The time-to-productivity of a truly senior developer is 3-4 weeks in a new stack. One who seems senior but doesn't understand architectural decisions takes 3-4 months. That difference costs more than the annual salary.

What "Senior" Really Means (And It's Not Just Time)

In Portugal, senior is often confused with seniority. I see CVs with "15 years of experience" that list CRUD apps in PHP 5 and MySQL, with no evidence whatsoever of having made substantive technical decisions.

A senior developer has three concrete characteristics:

1. Architects solutions knowing trade-offs. Doesn't say "we use PostgreSQL because it's good". Says "we considered MySQL because our write pattern is X, but we chose PostgreSQL because MVCC solves Y problem we have in production, and the penalty of Z is acceptable because".

2. Mentors without being in a formal "tech lead" position. A senior sees new code and asks "what problem does this solve?" before commenting on style. Documents decisions. Teaches through pair programming and substantive code review, not superficial.

3. Has ownership: responsibility beyond the sprint. Not "I'm implementing the payments API"; it's "I'm responsible for ensuring the Stripe integration in production never fails silently and if it does, the team knows why and how to recover".

This is genuinely rare in Portugal. Most senior CVs I see contain developers who were promoted to seniority by seniority, not by demonstration of architectural competence.


The Filter That Works: Technical, Before Interview

The most common mistake in technical recruitment in Portugal is having the generic recruiter interview (HR) and only then asking for a "technical test". This wastes 2-3 weeks and good candidates drop out (because they receive other offers) or weak candidates pass because they know how to perform on Zoom.

Proposal: reverse the order. Technical phase as initial gate, before formal interview.

I'm not talking about LeetCode or HackerRank. Those tests filter for talent at solving puzzles, not seniority.

I'm talking about: technical case study with real-world decisions.

Concrete example of how to structure this:

"You need to design a billing API for a multi-tenant SaaS platform with 1000+ customers. Requirements: monthly and annual billing, plans with variable features (usage-based), support for multiple currencies and local taxes. Outline: database (schema or conceptual), main endpoints, how to handle failures (network, timeout, idempotency), and caching/performance decisions. Document, 2000-3000 words. Time: 3 hours, you can use any tool (Excalidraw, drawio, markdown)."

Why it works:

  • A developer with 5-6 years of real SaaS B2B experience has already faced this, can structure it without perfection.
  • A developer with 12 years but in a rigid corporate context will tell stories about "following the team's architecture" and cannot reason from first principles.
  • The document shows written communication, trade-offs considered, and honesty about ambiguities.

This is not foolproof. But it filters out ~70% of candidates who look senior on the CV and aren't.

Common pitfall: Expecting perfection in the case study. A senior is rarely perfect in a new context without context. You have to evaluate whether the reasoning is solid, even if the schema has small flaws, or if they considered multi-currency in a superficial way.


Salary and Market Expectations in Portugal

Here comes harsh reality.

A truly senior developer in Portugal (3-5 years post-junior, real demonstration of architecture and mentoring) market practice:

  • Lisbon, SaaS startup: €55-70k gross.
  • Porto, consulting or corporate: €50-65k gross.
  • Remote, foreign company: €65-90k gross (but difficult to recruit because everything shifts to remote).

If you have a budget of €35-45k, you're not recruiting senior. You're recruiting mid or junior senior. This isn't criticism; it's clarity.

I frequently speak with founders who say "we want a senior because we need quick decision-making, but we only have mid-level budget". The logic is flawed. Two paths:

Option 1: Increase the budget. A senior who gets the architecture right the first time saves 15-20k in technical debt you'd have to resolve later.

Option 2: Hire a competent mid-level developer (€40-50k) + technical consulting bridge (€500-1k/month, 10-20h) for code review and architectural decisions. Outcome frequently better than a mediocre "senior" you hire to save money.

The third option (pretending a junior is senior) is like building a bridge with the wrong cement; you save 10% on materials and spend 300% on repairs.


The Process That Works: 4 Compressed Phases

Proposal for a process, 3-4 weeks total (vs. typical 8-10 weeks):

Week 1: Technical Screening You send the case study (3 hours, async). You don't have to respond in 24 hours; candidates have up to 1 week. Quality > speed. You evaluate: reasoning, written communication, knowledge of trade-offs. Clear pass/fail. Goal: filter 80%.

Week 2: Deep Technical Interview 1h, with a senior engineer from your team (not recruiter). Agenda: case study they submitted, concrete technical questions about the stack you'll use, 1-2 simple design problems ("how would you solve X in production?"). Goal: validate that the case study wasn't ChatGPT, and that reasoning is solid under pressure.

Week 3: Trial (optional but recommended) If you have capacity: 1-2 weeks trial (half-time or full-time, you decide). Real task, small (not your biggest project). You observe: how they structure code, how they question requirements, how they interact with the team. This costs your time but saves months of wrong onboarding. They're paid as a contractor, ~€1500-2500 for the 2 weeks.

Week 4: Offer and Onboarding Standard. But with a twist: week 1 is intensive mentoring (pair programming 50% of the time), don't leave them alone in Jira.

Generalist consultancies in Portugal can't do this because they lack technical expertise. If you use a consultancy, provide precise technical briefing (case study, stack, concrete expectations) and your technical validation afterwards.


Red Flags I See Constantly

"I have 10 years as a developer, 2 years as tech lead."

Moderate red flag. Tech lead is not engineering seniority; it's management. A tech lead can be senior (if they make solid technical decisions) or can be mid/junior promoted early (common in 20-person Portuguese startups). Concrete follow-up questions: "What was the worst architectural decision you inherited and how did you resolve it?" If they stay generic, they're not an engineering senior.

"Full-stack Python + React, 8 years, available immediately."

Yellow to red. If they're available immediately, it typically means: recently left a contract (understand why), or been unemployed for a while (investigate). It's not an automatic dealbreaker, but combined with employment urgency, it can indicate previous performance issues or unrealistic salary expectations (will get frustrated when they discover the salary is lower than expected).

CV with keywords but no context of ownership.

List of technologies (Kubernetes, microservices, GraphQL, RabbitMQ) but when you ask them to explain an architectural decision, they shift to "we followed the architecture we had". Probably did technical work but didn't make decisions. Mid, not senior.

"I used React in 12 different projects."

Potential red flag. Either they create reusable components (good sign), or they reinvent the wheel each project (sign they don't learn between projects, or that projects are too different due to lack of patterns). Follow-up questions: "What was the component structure you reused most? How did it evolve?" Technical answer > generic answer.


The Temptation of Specialist Recruiters (and Why They Often Fail)

In Portugal there's growth in "tech recruiters" who understand more than a generic recruiter but less than an engineer.

Advantage: better filter than pure HR, can read technical CVs without being an engineer.

Disadvantage: often still do superficial screening. Understand keywords but not trade-offs. Say "they're senior because they have 8 years and did microservices" when microservices are a buzzword and not a sign of seniority.

What really works: Technical recruiter (or tech recruiter + your engineer for validation). Typical fee: 15-20% of salary (not 25% like generic consultancy), or fixed consulting (€3-5k per hiring cycle).

Cheaper alternative: hire a freelance senior (ex-CTO, experienced engineer) for €2-3k to do technical screening. It pays for itself in 2-3 hires because you avoid expensive false positives.


Onboarding the Senior: The First 4 Months Define Everything

You've done 90% of the recruitment work, now you can burn it all in onboarding.

Senior who's arrived needs:

Week 1-2: Context, not tasks. Meetings with product, finance, eng. Old code. Past decisions. Architecture. Why you're heading in this direction. Don't put them coding; their mind is absorbing context.

Week 3-4: One small task, with pair. Ideally something that contributes but isn't critical. Goal: understand code style, PR process, deployment. Pair programming with one of your engineers, 50% of the time.

Month 2-3: Gradual ownership of a feature. They start to own smaller decisions. Your code reviews go deeper; you start to see them make correct decisions or questions that need discussion.

Month 4: "Hire" vs "no hire" evaluation. If all goes well, it makes sense to expand scope. If there are issues (doesn't understand the stack, makes poor decisions, doesn't integrate culturally), now is the time for a candid conversation. Missing this window is a common mistake.


Conclusion

Hiring senior in Portugal is a process squeezed between expectation (we want quick, quality decision-making) and reality (true seniors are rare and expensive, but much more efficient than mids).

There are no shortcuts. What works: concrete technical criteria, case studies that simulate real decisions, validation by your engineer, and honesty about salary. What doesn't work: confusing seniority with time on the job, letting a generic recruiter do technical screening, or skipping intensive onboarding.

If you're facing a similar problem, book a conversation at https://impact-origin.com/agendamento.

Impact OriginEnjoyed this article?At Impact Origin we help founders and teams build and scale custom software, from a startup MVP to the next step. If you have a project in mind, let's talk.