Senior Software Engineer - Data Platform
About the Company:
We're not here to run campaigns. We're here to help businesses build legacies.
OOm is one of Singapore's leading performance digital marketing agencies, and we've been growing businesses since 2006. Across SEO, SEM, social, content, and web, we work as true partners to our clients. We are obsessed with their success, honest about what works, and relentless in our pursuit of results that last well beyond one quarter.
Over 8,000 clients. 30+ industry awards. A Premier Google Partner. A Meta Business Partner.
But more than the accolades, what defines us is how we work and who we work with.
We believe in winning together. That means we back great teams over individual stars, make bold calls over safe ones, and build for tomorrow even when today's demands are loudest. We move with conviction, we show up with grit and resilience, and we never stop growing because that's exactly what we ask of the businesses we serve.
The Opportunity
About Us
At our company, we're building a suite of modern business applications that help organisations work smarter through automation, intelligent workflows and AI-powered experiences. While AI is a key part of our products, great software is built on strong engineering foundations.
This role is suited for an engineer who enjoys solving complex system and data problems, not just building application features. We are looking for someone who can combine strong hands-on engineering ability with architectural thinking. Someone who can build the foundations today while ensuring they do not become the constraints of tomorrow.
What You’ll Do
This is a hands-on engineering role at the intersection of backend engineering, data systems, and platform architecture. You will work on technically complex problems involving data integration, data modelling, distributed processing, and reliable backend services.
You will play a key role in shaping how data is collected, structured, connected, and made available across our products, while helping establish engineering patterns that can scale as the platform evolves.
You’ll:
Design and build scalable backend services and data platform capabilities
Build systems that ingest, process, and integrate data from multiple internal and external sources
Design robust data models for complex and interconnected datasets
Develop mechanisms for linking, resolving, deduplicating, and reconciling records across systems
Build reliable APIs, integrations, and data processing workflows using synchronous and asynchronous patterns
Design for data integrity, traceability, performance, reliability, and scalability
Handle real-world integration challenges including retries, duplicate data, partial failures, and recovery
Contribute to the architecture of multi-tenant, data-intensive SaaS systems
Own technical solutions from system design through production, identifying architectural risks and trade-offs
Collaborate with Product and Engineering to translate business requirements into pragmatic, scalable technical solutions
The Talent
Minimum 5 years of professional software engineering experience, with strong backend engineering fundamentals
Strong proficiency in at least one backend programming language such as Python, TypeScript, Java, or Go
Strong SQL and relational database knowledge
Experience designing backend services and APIs
Experience designing complex data models
Experience building data-intensive applications or platforms
Experience integrating with third-party systems and APIs
Understanding of asynchronous processing, queues, and background workers
Experience designing reliable systems that handle failures and inconsistent data
Experience working with cloud infrastructure
Comfortable navigating ambiguity, evaluating trade-offs, and designing pragmatic solutions rather than over-engineering for hypothetical scale.