Home / Countries / Brazil

03 · Brazil

Brazil: the deepest senior bench in the region, and the most rules

When you need someone who has genuinely run a platform at scale, Brazil has more of those people than anywhere else in Latin America. You pay for it in money, in a 30-day notice period, and in one decision you must make before sourcing starts: CLT or PJ.

UTC−3São Paulo and the south-east, no DST since 2019
30 daysAviso prévio — plan your start date around it
BRLCLT in reais; PJ invoices in reais or USD
7–10 daysIntake to shortlist on a senior engineering role
Time zone

Two hours ahead, and it works better than you'd think

Brazil abolished daylight saving in 2019. São Paulo, Rio, Belo Horizonte, Curitiba and Florianópolis sit on UTC−3 all year. Against US Central that is three hours ahead from November to March and two hours ahead the rest of the year; against Eastern, two and one respectively.

What this means day to day: a Brazilian engineer starting at 9:00 in São Paulo is online from 6:00 or 7:00 Central. They cover your entire morning and most of your afternoon, and they log off around the time your West Coast colleagues are hitting their stride. For a team whose important meetings happen before 3pm Eastern, the overlap is fine. For a company that does its planning at 4:30pm Pacific, it is not — be honest about that before you start a search here.

Brazilian teams handle this well because a large share of the senior market has already worked for US or European companies and has calibrated its own hours. Many candidates will voluntarily offer to start at 10:00 or 11:00 to sit inside your afternoon. Ask; do not assume.

Where the talent is

São Paulo is the largest market by a distance and the most expensive. Florianópolis is a genuine engineering town with strong product and platform people and slightly saner bands. Recife's Porto Digital cluster produces excellent mid-level engineers at lower cost. Belo Horizonte and Campinas are good for data and backend. Almost everything is remote now, so location mostly affects price and time-zone-of-habit rather than availability.

The fork

CLT or PJ — decide this before you see a single CV

This is the single most consequential choice in Brazilian hiring, and switching after the shortlist costs you candidates. Here is the honest comparison.

Option A

CLT — full employment

Registration in the carteira de trabalho digital, INSS and FGTS contributions, 13º salário, 30 days of vacation plus a one-third vacation bonus, transport and meal allowances where applicable.

  • Total cost lands roughly 70–80% above base salary once FGTS, INSS, 13º and vacation accrual are counted
  • Strongest candidate protection, and the version most mid-level people prefer
  • Termination without cause triggers a 40% FGTS penalty and notice pay
  • Lowest legal risk if the person works fixed hours under your direction
Option B

PJ — service contract with their company

The candidate invoices through their own CNPJ, usually under the Simples Nacional regime. Standard practice in Brazilian tech, especially at senior level.

  • Cost is close to the headline rate; no 13º, no FGTS, no vacation accrual
  • Senior engineers often prefer it — the net take-home is higher
  • Carries reclassification risk if the arrangement looks like employment in everything but name
  • Requires a properly drafted service agreement, not a one-page template

Our default recommendation: PJ for senior individual contributors who genuinely control their own working method, CLT for anyone in a fixed schedule, a support rota, or a role with direct reports. We will tell you plainly when your description does not match the vehicle you asked for.

Money

What roles cost in Brazil right now

Annual figures. CLT column is base salary before employer burden; PJ column is the all-in annual invoice value, which is why the two look closer than the real cost.

Interlatin placement bands, Brazil, annual
RoleCLT base, BRLPJ, BRL / yearUSD equivalent (PJ)
Mid-level backend engineer (4–6 yrs)150,000 – 210,000216,000 – 300,00039k – 55k
Senior backend engineer (7+ yrs)228,000 – 330,000354,000 – 546,00065k – 100k
Staff / principal engineer330,000 – 450,000516,000 – 720,00095k – 132k
Senior React / front-end192,000 – 288,000300,000 – 450,00055k – 82k
SRE / platform engineer240,000 – 348,000372,000 – 570,00068k – 104k
Data engineer210,000 – 318,000324,000 – 498,00059k – 91k
Engineering manager300,000 – 432,000468,000 – 660,00086k – 121k
Bilingual support specialist66,000 – 108,00096,000 – 162,00018k – 30k
Accountant with US GAAP exposure120,000 – 186,000174,000 – 276,00032k – 50k

Converted at roughly 5.45 BRL to the dollar. For CLT, add 70–80% to base to reach true annual cost. Brazilian bands move faster than the other three markets — we re-benchmark every quarter.

Local reality

Four things that will affect your Brazilian search

Aviso prévio is 30 days, and it is real

CLT employees give 30 days of notice, and most employers make them serve it. Add contract preparation and you are realistically six to seven weeks from offer to first standup. If a Brazilian candidate promises two weeks, ask what their current arrangement is — usually it means they are PJ.

English is the filter, not skill

Brazil has more strong engineers than the other three markets combined and fewer of them speak comfortable business English. Our funnel here loses more candidates at the calibration call than anywhere else. Budget a slightly longer search and do not lower the English bar to hit a date — that hire fails in month two.

Carnival and the June holidays

Carnival is not a statutory national holiday but the country effectively stops for it, and Ash Wednesday morning too. Interview loops scheduled across that week die. We plan around it and tell you the dates in January.

Payment mechanics matter to candidates

PJ contractors care a great deal about how and when USD lands, what FX spread they eat, and whether Pix is available for the local leg. A vague answer in the offer call reads as amateurism. We answer it in writing before the offer goes out.

Start in Brazil

Right call when you need proven senior depth and you can live with two hours of drift and a six-week runway. Send us the role and we will come back with the CLT/PJ recommendation attached to the band.