Control Risks logo

Full Stack Developer

Posted 14 days ago

OfficeMadrid, Community of Madrid, Spain

Reporting to the CTO, as a Full Stack Developer you will work across the full platform — a modular monolith built in .NET 10 on the backend and React on the frontend. You will own features from requirement to production, working in a small, high-trust team where your decisions have direct product impact.

Please submit your CV in English.

Requirements

What You’ll Work On

Backend (.NET / Modular Monolith)

• Build and extend modules within a clean modular monolith architecture — Domain, Application, Infrastructure, and API layers per module

• Implement message-based integrations over RabbitMQ and HTTP, with proper retry, dead-letter, and observability patterns

• Design and own PostgreSQL schemas, migrations (Liquibase), and query optimisation for compliance-grade data integrity

• Write code test-first — unit tests, integration tests with in-memory and real DB where appropriate, and end-to-end API tests

• Contribute to and enforce coding standards, PR reviews, and architectural decisions.

Frontend (React / TypeScript)

• Build complex, accessible UI components and multi-path forms for compliance workflows

• Maintain consistency with our design system and work closely with our UX designer on new feature implementation

• Integrate with the backend via typed API contracts, handling loading states, error boundaries, and optimistic updates correctly

AI-Augmented Development

• Use Claude Code as an active development tool — you will work with CLAUDE.md, SKILLS.md, and RULES.md context files to give the AI accurate codebase context

• Translate Jira requirements and Notion design documents into structured Claude Code prompts that produce high-quality, testable code

• Maintain and improve the Claude Code context layer as the codebase evolves, treating it as first-class documentation

• Evaluate AI-generated code with the same rigour as human-written code — you own the output

Platform & Deployment

• Build and maintain Docker images for all services, following security and size best practices

• Deploy and manage workloads on Kubernetes clusters — writing and reviewing manifests, Helm charts, and managing config/secrets

• Collaborate with DevOps on CI/CD pipelines, environment configuration, and production readiness

• Participate in on-call rotation for production incidents (light, given our scale).

What We’re Looking For

Must-have

• 4+ years of professional .NET development (C#), with strong understanding of clean architecture and SOLID principles

• Solid React and TypeScript experience — you write components that are readable, testable, and maintainable

• Genuine TDD discipline — you write tests before or alongside code, not as an afterthought; you understand the difference between unit, integration, and end-to-end tests

• Hands-on experience with RabbitMQ or similar message brokers in production systems

• PostgreSQL proficiency — schema design, migrations, query analysis, and indexing

• Practical Kubernetes experience — you can read and write manifests, understand pod scheduling, and debug deployment issues

• Docker fluency — you build lean, layered images and understand multi-stage builds

• Experience working in or contributing to a modular monolith or DDD-influenced codebase

• Strong English communication skills — written and verbal

Strong advantage

• Experience using Claude Code, GitHub Copilot, or similar AI coding assistants as a genuine productivity tool in a professional codebase

• Familiarity with structuring AI context files (CLAUDE.md-style) to guide code generation effectively

• Experience with GCP (Cloud Run, Cloud Storage, Pub/Sub, Vertex AI)

• Playwright or similar e2e test framework experience

• Exposure to knowledge graphs, Neo4j, or graph-based data modelling

Our Engineering Ethos

We are direct about what we expect. These are not aspirational values — they are how we work:

• Test coverage is a delivery requirement, not a nice-to-have. Core business logic ships with tests.

• PR reviews are substantive. We comment on architecture, not just typos.

• We use AI tooling to move faster, not to lower the quality bar. AI-generated code gets reviewed like any other code.

• We document decisions. ADRs, Notion pages, and Claude Code context files are part of the job.

• We raise issues early. A blocker surfaced on day one beats a missed deadline on day ten.

Job details
Workplace
Office
Location
Madrid, Community of Madrid, Spain
Control Risks logo
Control Risks
View company page

Control Risks is the specialist global risk consultancy that helps organisations succeed in a volatile world. Find out more.

Key team members

Julian Dindo

Julian Dindo

Neal Pollard

Neal Pollard

Geert Aalbers

Geert Aalbers

Paula Leite

Paula Leite

Apply smarter with Jobr

Jobr aggregates jobs directly from company career portals — no middlemen. Our team applies on your behalf with AI-tailored resumes, reviewed by a human before submission.

Direct from company career pages
AI-personalised cover letters
Human review before every submit
Application tracking & follow-ups