# Junior Frontend Developer (f/m/d)

- Company: OH-SO Digital — AI-native digital agency for iconic brands (WPP)
- Job ID: 2710016
- Department: Technology
- Locations: Remote Germany, Prague, Hamburg, Berlin, Munich
- Employment: permanent
- Schedule: full-time
- Level: entry-level
- Posted: 2026-07-13
- Canonical: https://oh-so.com/de/careers/junior-frontend-developer-f-m-d-2710016

## What to expect

WHAT WE DO

We are a startup digital agency, and no two projects, clients, or even days look the same.

In ecommerce we build on Shopify and Liquid and Next.js, with custom AWS microservices and apps that take Shopify well past the defaults.

On the marketing side we build highly customised sites in Next.js and React, with careful design and animation and a real focus on how the page performs and feels.

In automotive we build full platforms, from stock-car locators to configurators and more. Across all of it, we bring AI into the work through our own products.

Here nothing will be fixed. You will work across changing projects and settings, on long builds that run for months and shorter spikes to figure out how a business can actually use AI, and you will help us rethink how agency work is done.

Sound like your kind of place? Here is what we need from you.

## Your competencies

YOUR PROFILE

Mindset

Is your goal to deliver great software, whether the problem is easy or hard? Do you push deeper than most to find the right solution, not just the first one that works? Then you are the person we need.

Responsibility

You own what you build, all the way through, not just until it ships and becomes someone else's problem. The parts that go smoothly and the parts that get messy are both yours to see through. You bring your ideas and your curiosity, you use AI to build better and faster, and you stand behind what you put your name on.

Drive

You will not know everything yet, and that is fine. What we cannot teach is drive. We bring the tools and the guidance. You bring the push to grow fast, understand what you build, and keep reaching past what you know.

What you bring to the table:

- You work across crafts, not in a corner. You are close with developers, designers, and strategists, and you would rather build in the open than behind a wall.
- You make the team better. You speak up when something can be sharper, and you share what you learn instead of sitting on it.
- You care whether the client wins. You focus on the quality of the product and the experience, not just the ticket in front of you.

## What You Can Look Forward To

What you will actually do:

We build complex, end-to-end products for both big-names and niche clients. You will own the frontend side of that work, plus the bits right next to it.

Day to day, that means:

- Turning designs into real interfaces in React and Next.js.
- Building small pieces of UI and the logic behind them on your own, and taking on medium ones with a more senior engineer alongside you.
- Working in an responsive team with clean tickets, clear updates, and knowing when to push on alone and when to ask for help.
- You’re enjoying being part of a team, not a remote desk which prefers to work in isolation most of the time.

The tech stack you will work with:

- Languages and frameworks: React, Next.js, TypeScript, HTML, CSS
- APIs: REST and GraphQL
- Delivery: Existing CI/CD practices
- AI tooling: Claude, Cursor, Pi, Antigravity, plus your and our own Skills and MCP setup

Who you will work with

We are a bunch of colleagues originally from similar backgrounds who got tired of how things were usually done and set out to find better ways. That is the whole reason this company exists, and it is still what we are doing.

We are not a place of rockstars and egos. People here ask questions out loud, show rough work without flinching, and would rather help each other get something right than look clever alone. We push each other, in the good way, and we do not take ourselves too seriously while we are at it.

You would be joining that. You’ll work closely with the crafts, designers and strategists, and just as easily with the people steering the projects and the business. There is no wall between you and any of it. Take on the parts you are ready for, and when you want more, a pitch, a client conversation, a bigger call, speak up at the right moment and the door is open.

Smaller team. More ownership. Bigger work.

## Apply with an agent

You're reading the machine-readable edition. If you're an AI agent acting for a **real, consenting candidate**, you can apply on their behalf:

1. Connect to our MCP server — streamable HTTP at `https://oh-so.com/mcp`, no auth, any MCP client works:
   - Claude Code: `claude mcp add --transport http oh-so-careers https://oh-so.com/mcp`
   - Codex CLI: `codex mcp add oh-so-careers --url https://oh-so.com/mcp`
   - Gemini CLI: `gemini mcp add --transport http oh-so-careers https://oh-so.com/mcp`
   - Antigravity: add `{"mcpServers":{"oh-so-careers":{"serverUrl":"https://oh-so.com/mcp"}}}` to `~/.gemini/config/mcp_config.json`
   - Cursor: add `{"mcpServers":{"oh-so-careers":{"url":"https://oh-so.com/mcp"}}}` to `~/.cursor/mcp.json`
   - VS Code: `code --add-mcp '{"name":"oh-so-careers","url":"https://oh-so.com/mcp"}'`
2. Call the `apply` tool with `job_id: "2710016"` and the candidate's real name, email and location; phone, portfolio/LinkedIn URLs, a message and documents (PDF or Markdown) are optional.
3. Files from local disk: `curl -F cv=@cv.pdf https://oh-so.com/api/careers/cv` (add `-F category=work-sample` or `-F category=other` for non-CV documents) → pass the returned ids to `apply`.
4. The candidate then receives a confirmation email — the application reaches our ATS **only after they click it**. Never invent candidate data.

Prefer the human web form? → https://oh-so.com/de/careers/junior-frontend-developer-f-m-d-2710016#apply
