Job Description Template: Frontend Developer
This template helps you write a compelling frontend developer job ad for your Swiss team. It includes role overview, key responsibilities, technical and soft-skill requirements, and guidance on benefits and compensation in CHF. Adapt the Pensum (%), canton, and language requirements to your location and hiring needs.
A strong job description attracts the right frontend developers and sets clear expectations from day one. This template covers what candidates need to know: what they'll build, who they'll work with, the skills you need, and what your company offers.
Use this as a starting point. Swap in your company details, adjust the Pensum (full-time is typically 100%), name your canton or city (e.g. Zurich, Valais), and specify language requirements—most Swiss tech roles require German or English, sometimes both.
Role Overview & Responsibilities
Begin by describing what this person will actually do each week. Frontend developers build user-facing features, debug browser issues, and collaborate with design and backend teams. Be concrete: mention the tech stack you use (React, Vue, Next.js, etc.).
List 4–6 key responsibilities so candidates know if they're a fit. Examples: develop responsive interfaces, write maintainable code, participate in code review, contribute to testing and performance optimization.
- Design and implement user interfaces using [your tech stack]
- Collaborate with designers, backend developers, and product managers on feature delivery
- Write clean, testable code and participate in peer code reviews
- Debug and optimize frontend performance across browsers and devices
- Contribute to documentation and knowledge-sharing within the team
- Take ownership of assigned features from conception to deployment
Requirements & Skills
Split this into must-haves (e.g. 2+ years frontend experience, fluent in your chosen framework) and nice-to-haves (e.g. TypeScript, testing libraries, design system experience). This helps candidates self-assess honestly.
Language requirements belong here. If your team works in German, state 'German (B2 or higher) required' or 'English-speaking welcome.' Don't assume; be explicit about daily communication language.
- Solid experience with HTML, CSS, and JavaScript (ES6+) — must-have
- Professional experience with [React/Vue/Angular] or similar framework — must-have
- Experience building responsive, accessible web interfaces — must-have
- Familiarity with version control (Git) and agile workflows — must-have
- TypeScript, automated testing (Jest, Vitest), or design systems — nice-to-have
- Experience with performance monitoring and optimization tools — nice-to-have
What We Offer
Compensation and benefits matter. Name a salary range in CHF (e.g. CHF 95,000–120,000 gross annually for a 100% role). If you offer a 13th-month salary (13. Monatslohn), say so—it's standard in many Swiss contracts but worth highlighting.
Describe your team culture, working conditions, and development opportunities. Mention Pensum flexibility (80–100% for example), home-office policy, professional development budget, or mentorship. Keep it honest and specific to your company.
- Competitive salary (CHF [X–Y] gross annually) and 13th-month bonus
- Pensum 80–100% (flexible hours negotiable)
- Home office [X days/week] and collaborative office in [Canton/City]
- Professional development budget for courses, conferences, or certifications
- Health and accident insurance; contributions to occupational pension plan (BVG)
- Mentorship from experienced developers and growth opportunities within the company
Frequently asked questions
- Should I name a specific salary range or leave it open?
- Naming a range (in CHF) attracts serious candidates and speeds up recruitment. If your budget varies by experience, give a realistic range (e.g. CHF 95,000–120,000) and note that salary is open to discussion based on background.
- What does Pensum mean and how should I state it?
- Pensum is the percentage of full-time employment in Switzerland. 100% is full-time; 80% means four days/week. State it clearly: 'Pensum 100%' or 'Pensum 80–100%' if flexible. This replaces 'FTE' or 'hours/week' in Swiss job ads.
- Where do I mention language requirements?
- Include language requirements in the Requirements section, not buried in the intro. Example: 'German B2 or higher required for daily standups' or 'English-speaking candidates welcome; German a plus.' Be honest about what's needed for the role.
General information for Swiss employers, not legal advice. Have a lawyer confirm anything with legal consequences.