Swiss Work Permit for Non-EU Software Developers in 2026

The short answer
As a non-EU/EFTA software developer, you need a Swiss employer to apply for you, a degree plus several years of experience (or, in some cases, a strong track record instead), a salary at the local market rate and a free quota place. Developers have one real advantage: the federal migration office lists software development as a shortage job.
That listing means your employer can often skip the hardest part of the file, proving that no Swiss or European candidate could be found. The rest is still strict. Below is how the process works, what it costs and how long it takes, from the law, this year's quota ordinance, the State Secretariat for Migration's internal directives and four cantons' pages for employers.
Who applies for the permit, you or the employer?
The employer. The Foreign Nationals and Integration Act (FNIA) says that for a salaried job "the application for a permit must be submitted by the employer" (art. 11). Zurich's labour office is blunter: its explanations for employers state that an application from the worker will not be considered at all.
So the permit is not something you can sort out before you have an offer. The order is offer first, then contract, then application. The contract has to be signed and must say that it only takes effect if the permit is granted, which is how the State Secretariat for Migration (SEM) describes it. The employer files in the canton where you will work. A company based abroad needs a representative in Switzerland to file for it, as Zurich's application page explains.
What you control is the quality of the file. The canton tests it against five conditions in FNIA articles 18 to 24: the hire must be in the interest of the Swiss economy, Swiss and EU/EFTA candidates come first, pay must match local norms, you must be qualified, and suitable housing must be available. For a developer, priority and qualifications are the two to watch, and priority is where you start ahead.
Priority: why developers have it easier
The rule is hard on paper. You can be hired only if "no suitable domestic employees or citizens of states with which an agreement on the free movement of workers has been concluded can be found for the job" (FNIA art. 21). Domestic here means Swiss citizens and anyone already living in Switzerland with the right to work. In practice an employer proves this with dated job ads, a posting with the regional employment office and on EURES, and a list of applicants with the reason each was turned down. That is what Zurich asks for in the normal case.
For developers, the normal case often does not apply. The SEM's directives on stays with work, the manual the cantons follow (section 4.3.2.2.1, in the version updated on 30 June 2026), list occupations with a marked, structural shortage of skilled staff. For these, the authorities may assume the local pool is used up and drop the demand for evidence of the search. The list includes, in our translation from the German:
Specialists in information and communication technology (IT engineers, systems analysts, software developers, application programmers, database and network professionals)
The employer meets the duty of proof by explaining plausibly that the job falls into one of these occupations. Zurich's explanations say the same: in shortage occupations, job ads and candidate lists can be waived, but the employer has to make the shortage case, and a short-term dip in the market does not count.
There are two catches. A canton can still ask for proof when it sees a reason, for example the situation of its own labour market. And some cantons ask for steps anyway: Geneva's page for employers expects the vacancy to have been announced to the cantonal employment office, whatever the unemployment rate in the field. Ask your future employer early whether it plans to argue the shortage case or to document a search, because a search means the job has to be advertised before the file can go in.
What counts as qualified, and the route without a degree
Work permits go only to "managers, specialists and other qualified workers" (FNIA art. 23). The SEM reads this as a university or university of applied sciences degree plus several years of experience. The Federal Council's fact sheet on quota use shows how closely that is applied: in the years before 2023, about 87% of all third-country nationals admitted for work had at least a tertiary degree.
A degree is not the only way in. The law also admits people "with special professional knowledge or skills" where there is a need for them (art. 23 para. 3 c), and the SEM directives (4.3.5.1) apply this to shortage occupations. The floor is a vocational qualification or several years of experience, as a rule at least five, backed by documents. The directive's examples for this route are technical and specialised ICT jobs, such as database and network specialists, so a self-taught developer with a strong record has a case to make, not a sure path. Expect more scrutiny on it: these cases still go to the SEM for federal approval under the ordinance on the approval procedure (ZV-EJPD art. 1).
For a B permit, the bar includes more than your CV. The authorities also weigh "professional and social adaptability, language skills and age" as signs of lasting integration (art. 23 para. 2). There is no fixed age limit or language level for a first permit in the law, and the SEM directives (4.3.5.5) say that for well-qualified specialists in an international setting, good English can be enough. Your diplomas matter too: Zurich wants documents in German or English, with certified translations where needed.
If you studied in Switzerland
A Swiss university degree changes the picture. Graduates may stay for six months after finishing to look for a job, and they can be hired without the priority test if their work is of "high academic or economic interest" (FNIA art. 21 para. 3). The SEM directives (4.4.6) name start-ups next to large firms and SMEs as employers who can use this, and say the canton decides these cases without sending them to the SEM. The job must match your degree, though: general admin work does not qualify.
Salary: no fixed number, but a real check
There is no salary threshold for a Swiss work permit. Instead, pay and working conditions must be "customary for the location, profession and sector" (FNIA art. 22). The Ordinance on Admission, Stay and Employment (OASA, art. 22) tells the canton what to compare: the law, collective agreements, pay for the same work in the same company and sector, and wage statistics.
The SEM directives (4.3.4) make that concrete. Because minimum wages in collective agreements often sit below what people are really paid, the canton also uses current wage surveys, and their averages are "as a rule to be regarded as a minimum in urban areas". The tools named include the federal statistics office's Salarium, SECO's national wage calculator, the trade unions' calculator and the Swiss ICT salary survey. Basel-Stadt points employers to Salarium, Vaud to SECO's calculator. So an offer well below the going rate for your role in Zurich or Geneva can sink an otherwise good file.
Two details from the directives help start-up hires. Only pay you have a contractual right to counts, but shares under an employee participation plan can count if the cash salary covers your living costs. And the canton also checks that social insurance is paid and that you have health and accident cover. Geneva adds a rule of its own: the job must be full-time.
Even a perfect file still needs one more thing, a free place in the quota.
How the quotas are split between the cantons
For 2026 the Federal Council left the quotas for non-EU/EFTA workers unchanged, as its press release of 19 November 2025 says: 4,500 B permits and 4,000 L permits for all of Switzerland. What most guides leave out is who holds them. Annex 2 of the ordinance gives the cantons only 1,250 of the 4,500 B permits. The other 3,250 stay in a federal reserve.

Zurich holds 249 B permits for the whole year, for every employer in the canton. Its share of L permits is 399. When a canton runs short, it asks the SEM for more from the federal reserve with a documented request and a report on how it used its own share, per the SEM directives (4.2.1). The SEM then makes the labour-market decision itself (FNIA art. 40 para. 3). The reserve is mainly meant for cases such as major company relocations, research, transfers of managers and know-how, and large projects of national importance.
Does that mean the quota will block you? Usually not. The Federal Council reported that 74% of the third-country quotas were used by the end of 2024 and about 52% by the end of September 2025. Its fact sheet also shows where the demand comes from: in 2023, information and communication services headed its list of sectors with the strongest demand for skilled workers from outside the EU/EFTA. The quota is a ceiling, and the conditions above are what decide most files. The same fact sheet says the SEM usually grants a canton's request for extra quota within a few days. The 2026 figures were set in November 2025, and the 2027 figures were not out when we wrote this. Check them once the Federal Council decides, since each quota year starts on 1 January.
Two side notes. UK nationals have a separate quota of their own, 2,100 B and 1,400 L permits in 2026. And work of up to four months within twelve months falls outside the quotas (OASA art. 19 para. 4), but the priority rule and the other conditions still apply.
L or B: what each permit lets you do
The length of your contract decides the permit type. An L permit covers stays of up to one year (FNIA art. 32). Vaud's page for employers gives the practice there: an L runs for the length of the contract, at most 364 days, and can be renewed once. A B permit is for stays of more than a year; Vaud grants it for open-ended contracts or fixed terms of more than 24 months, and for non-EU/EFTA holders it must be renewed every year.
The difference matters most when you want to move on. With an L permit, you can change jobs only "if there is good cause" and the conditions are checked again (art. 38 para. 1). With a B permit, you "require no additional authorisation to change jobs" (art. 38 para. 2), and you may move to another canton as long as you are not unemployed (art. 37). After ten years in Switzerland, with the last five on a B permit without a break, you can be granted a settlement permit (C), or after five years if you are well integrated and communicate well in the local language (art. 34).
Does the SEM still approve every permit?
No, and this is where many guides are out of date. The SEM's own procedure page, last changed in 2020, still describes every case going from the canton to the SEM for final approval. Since 1 February 2023, the two-step procedure applies only to certain groups of people and jobs, as the Federal Council's fact sheet says. The current list in the approval ordinance (ZV-EJPD art. 1) names, among others, self-employment and people admitted for special skills without the usual degree. A standard hire of a qualified developer is not on it.
The SEM still decides when a permit comes from the federal reserve, though, and with Zurich's own share at 249 that can happen. Zurich's migration office page still shows an SEM approval step. So it depends on your canton and your case; your employer can ask the labour office which applies.

How long it takes, canton by canton
The cantons that publish their times point to one to two months from a complete file to a decision, plus the visa if you need one. They measure different things, though.
Zurich
Zurich publishes no processing time. Applications go in online through ZHservices or easyGov, and the status can be followed there. The fee for an approved first permit under the quota is CHF 400, and a rejection costs CHF 400 too, with a surcharge of up to 50% for complex cases.
Vaud
Vaud gives the clearest numbers. A complete file takes about four weeks on average to the cantonal decision, and about ten days more where federal approval is needed. You should apply for your entry visa at the Swiss embassy two to three months before the planned start, in parallel with your employer's application. Fees are CHF 400 for a B permit and CHF 200 for an L permit.
Geneva
Geneva asks employers to file about six to eight weeks before you arrive. The file goes to the population office (OCPM) first and then to the labour inspectorate (OCIRT), which may ask a tripartite commission for its view.

The OCPM's table lists the same six to eight weeks for EU and non-European nationals, as a guide only: some cases take longer.
Basel-Stadt
Basel-Stadt's labour office page gives no time or fee for third-country hires. It does point employers to Salarium to check the expected pay, which tells you what the office will compare your offer against.
Once the permit is granted and you have entered, register with your commune before you start work, as FNIA art. 12 requires. In Zurich the commune then sends you to the migration office for your biometric data, and the card arrives by post.
If you hold an EU or EFTA passport
Almost none of the above applies to you. Under the free movement agreement there is no quota, no priority test and no qualification check. The SEM's FAQ for EU/EFTA nationals sets out the short version.
| EU/EFTA developer | Non-EU/EFTA developer | |
|---|---|---|
| Quota | None | 4,500 B and 4,000 L for all of Switzerland |
| Priority test, qualification check | No | Yes |
| Long-term permit | B, valid five years | B, renewed every year (Vaud) |
| Job of up to 3 months a year | Notification only, no permit | Permit needed |
You register within 14 days of arrival and before you start work, with a written confirmation of employment. A contract of up to 364 days gets an L EU/EFTA permit, one of a year or more a B valid for five years. You may also stay for at least six months to look for work, with a job-seeker permit from the cantonal migration office. Croatian nationals are covered in full too: in January 2026 the Federal Council confirmed that the thresholds for bringing back quotas for them were not reached.
What to do once you have an offer
Ask the employer three things before you resign anywhere: which canton will receive the file, whether it has hired someone from outside the EU/EFTA before, and whether it plans to argue the shortage case for software developers or to run a documented search. A company that has done this before knows its labour office and its paperwork; a first-timer may need the SEM directive's shortage list in hand.
Then get your part ready while they write theirs. Gather your degree certificates, references and a CV that shows the years and the technologies, with certified translations into German or English if the originals are in another language. Check whether you need a visa and book the embassy early. If the offer is below what Salarium or the Swiss ICT survey shows for your role and city, raise it now, because the canton will.
If you are still looking, start with the current openings on our Zurich software engineering board.
Common questions
- Can I come to Switzerland as a visitor and look for a developer job there?
- You can look, but you cannot start work, and the permit is not usually decided while you wait in the country. The law says that someone who entered for a short stay and then applies for a longer one must wait for the decision abroad. The canton may let you stay during the procedure only if the conditions are clearly met.
- Can my spouse work in Switzerland if I get a B permit?
- Yes. Under the Foreign Nationals and Integration Act, the spouse and children of a B permit holder who join through family reunification may take a job or work for themselves anywhere in Switzerland. They do not need their own labour-market test. Family reunification itself has conditions: you live together, have suitable housing and do not depend on social assistance, and your spouse can communicate in the local language or has signed up for a language course.
- Do I need to speak German or French to get the permit?
- Not for the job admission itself. Zurich accepts application documents in German or English, and the law does not set a language level for a first work permit. Language skills count when the authorities weigh your prospects of long-term integration for a B permit, but the SEM directives say that for specialists in an international setting good English can be enough. The local language matters more later, for the C permit.
- Can a start-up pay me partly in shares?
- Partly. The SEM directives allow employee equity set out in a participation plan to count towards the salary check. The cash salary must still cover your living costs, and the equity has to stay in a reasonable proportion to the base pay.