jobapplier

Full Stack Developer

Control Risks

Skills

Required

  • modular monolith / DDD-influenced codebase
  • React
  • integration
  • TypeScript
  • RabbitMQ
  • PostgreSQL
  • migrations
  • Kubernetes
  • .NET development
  • C#
  • clean architecture
  • TDD
  • end-to-end tests

Preferred

  • AI
  • Claude
  • Code
  • GitHub
  • Copilot
  • CLAUDE.md-style
  • Cloud Storage
  • graphs / Neo4j / graph-based data modelling
  • Jira

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.

About Control Risks

Control Risks supports hybrid working arrangements, wherever possible, that emphasise the value of in-person time together - in the office and with our clients - while continuing to support flexible and remote working.

Responsibilities

  • 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.
  • 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
  • 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
  • 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).

Requirements

  • 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

Preferred

  • 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

Pay

We operate a discretionary global bonus scheme that incentivises, and rewards individuals based on company and individual performance.

Benefits

  • Control Risks offers a competitively positioned compensation and benefits package that is transparent and summarised in the full job offer.
  • Working with our clients, from day one our people are given direct responsibility, career development and the opportunity to work collaboratively on fascinating projects in a rewarding and inclusive global environment.

Full Stack Developer

Control Risks · Madrid, Spain (Hybrid) · Full-time · Posted 2026-11-06

Description

Please submit your CV in English.

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.

The Company is committed to further its diversity, inclusion and equity agenda and as an employee you have access to various business resource groups in the Company including the Company's LGBT+ network called MOSAIC, the Women's Network, and Synergy - a people network to celebrate and promote ethnic diversity at Control Risks

_Control Risks is committed to a diverse environment and is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, colour, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age or veteran status._

_If you require any reasonable adjustments to be made in order to participate fully in the interview process, please let us know and we will be happy to accommodate your needs._

Apply

[Apply at Control Risks](https://apply.workable.com/control-risks-6/j/D6866BFAF0/apply)