Jobs Companies Control Risks Full Stack Developer

About this Full Stack Developer role at Control Risks

Control Risks · Madrid, 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.

Ready to apply to Control Risks?
Apply to Control Risks

About Control Risks

Control Risks is a unique organisation to be a part of. Our ultimate success depends on recruiting and retaining talented people and stimulating their creativity and professionalism. Through our culture and the diverse nature and backgrounds of our employees we create an organisation in which you can be yourself in and can enjoy your work. Control Risks provides real benefit to many of the world’s leading organisations, and you can expect direct responsibility early on in your role, career development and the opportunity to work on some fascinating projects in a rewarding, innovative and inclusive environment.

See all jobs at Control Risks →

Similar jobs

Sign up for suggestions tailored to the jobs you open and the searches you save.

Apply now
🤖

Whoa — hold up

JobsRadar was built for real people having a rough time in their job search — not for automated requests. You're clicking way too fast and you're now temporarily blocked.

Come back later. If you're genuinely job hunting, we've got your back — just act like a human.

Catch your next role the second it’s posted.

Create a free account and we’ll watch the boards for you — the instant a job matches your search, it lands in your inbox or Telegram. No digging, no refreshing.

Create free account

Free forever · takes 30 seconds · already have one?

Get an edge on your job hunt.

Join our Telegram channel for the stuff that helps you land the role — salary benchmarks, the weekly market pulse, and new-feature drops. No spam, just signal.

Join the channel — it's free