Data Software Engineer
Madrid, Spain
Data Software Engineer
Who we are
We build game-changing products and scalable platforms for complex, high-volume digital markets.
Our cross-functional teams create online platforms and software solutions that reach hundreds of thousands of users every day.
Your mission
Are you ready to push technology into the future as a Data Software Engineer at The Workshop?
We’re looking for skilled, versatile and collaborative engineers with excellent design and problem-solving abilities. If you have experience developing high-performance applications and are ready to tackle challenges across the stack, we want to hear from you.
In this role, you’ll apply strong software-engineering fundamentals to building the services and capabilities of our data platform. You’ll design and develop systems that orchestrate, configure and expose ingestion, transformation and data-quality capabilities as a service, following a complete DevOps approach.
We’re looking for someone comfortable building production software: delivering new functionality while ensuring that everything built is reliable, observable, maintainable and easy to support.
What you’ll do
- Build services that orchestrate and expose ingestion, transformation and data-quality capabilities to other teams.
- Develop ingestion and connector-based integration capabilities using Kafka and Kafka Connect.
- Integrate and orchestrate distributed processing engines such as Apache Spark, Flink or Beam behind clean service APIs.
- Abstract the underlying execution of data-processing technologies.
- Implement comprehensive monitoring and alerting to track service health, data quality and resource utilisation.
- Investigate and support production issues, improving reliability and reducing recurring operational problems.
- Support performance-tuning initiatives and identify opportunities to increase efficiency and throughput.
- Use approved AI-assisted engineering tools responsibly for development, testing, documentation and troubleshooting.
- Direct AI coding agents as part of everyday delivery by providing clear context, critically reviewing their output and taking responsibility for the quality, security and design of everything that ships.
- Work with engineers and product owners using agile methodologies.
- Take end-to-end ownership of your work under a DevOps philosophy covering the entire software development lifecycle.
- Follow best practices in design, coding, testing, operations and monitoring.
- Give and receive constructive feedback through code reviews.
- Collaborate, perform peer reviews, share knowledge and develop skills across the team.
- Suggest and implement improvements that optimise the software development lifecycle.
- Keep up to date with developments in software, data and streaming technologies.
- Design, develop, test, deploy, maintain and support the services and capabilities of the data platform.
What you’ll bring
- Strong software-engineering fundamentals, including object-oriented programming, back-end development and multithreading.
- Relevant experience with Java and/or Python.
- Experience creating, evaluating, deploying, maintaining and evolving software solutions and services.
- Experience working with high-velocity, high-volume data in relational, semi-structured and unstructured formats.
- Expertise in data ingestion using Kafka and Kafka Connect.
- Hands-on experience with at least one stream or batch-processing technology: Apache Spark, Flink or Beam.
- Strong SQL skills, including query writing and database performance tuning.
- Experience working with relational and/or NoSQL database systems.
- An understanding of data modelling, software architecture and how different systems interact.
- An agile approach to development and a CI/CD mindset.
- Experience with CI/CD tools.
- A commitment to quality through comprehensive unit and integration testing.
- A pragmatic approach to building reliable, observable and maintainable production software.
- Familiarity with AI-generated code and the ability to assess its testing, readability and architectural fit.
- An understanding of when AI assistance adds genuine value throughout the software development lifecycle.
- Strong problem-solving skills, a willingness to take ownership and enthusiasm for technical challenges.
- A collaborative and respectful attitude.
- The ability to communicate effectively with different stakeholders.
- Good written and spoken English.
- A bachelor’s degree in Computer Science or a related discipline.
Nice to have
- Experience defining and monitoring data-quality standards, metrics and KPIs.
- Experience with Kubernetes, Docker and Argo CD.
- Knowledge of Apache Iceberg.
- Knowledge of Exasol.
- Experience with scripting languages such as Shell.
- Experience with the Confluent Platform.
- Experience building platform or “as-a-service” capabilities for other engineering teams.
What’s in it for you
- Private life and health insurance for you and your family.
- Pension plan.
- Gym reimbursement.
- Up to four weeks per year working from anywhere for eligible employees.
- A Learning Pocket for personal and professional development.
- A hybrid working model with flexible hours.
- Three paid volunteering days each year.
- A generous employee referral programme.
- Workplace perks including a gaming room with darts, pool, table tennis, table football, consoles and much more.
- Massages and a kitchen stocked with coffee, fruit, nuts and ice cream.
- 25 days of annual leave.