Senior Software Engineer
Role details
Job location
Tech stack
Job description
The Senior Software Engineer (SSE) will collaborate closely with clients and internal team members under the direction of the Development Lead to play a key role in delivering software development, cloud engineering, and support services. The SSE will ensure that the organisation maintains clear, scalable code, robust testing practices, effective support processes, and high-quality user documentation.
This role involves architecting and developing cloud-native solutions, administering Azure and environments, and working extensively with Databricks and latest data processing technologies It also requires supporting the evolution of a large-scale data distribution platform, delivering data via both real-time and RESTful APIs.
Strong technical capability, excellent communication, the ability to understand business requirements, and the capacity to deliver secure, reliable, and scalable solutions are essential. The role also includes contributing positively to the ongoing development of the engineering team and the broader technology function.
Responsibilities
Technology, Delivery & Architecture
- Contribute to the product roadmap, architecture, cloud strategy, and long-term technical direction.
- Design, develop, and maintain high-quality software aligned with business requirements and engineering guidelines.
- Build and operate cloud-native applications and infrastructure using Azure, and latest distributed systems patterns.
- Develop and optimise data pipelines and analytics workloads using Azure Databricks.
- Engineer real-time and batch data processing capabilities using streaming technologies.
- Implement Infrastructure-as-Code (Terraform) and deliver through CI/CD pipelines with automated testing.
Testing, Support & Operations
- Work with QA teams to define and validate test result.
- Provide application support to internal teams and clients in line with agreed SLAs.
- Administer and optimise cloud-hosted infrastructure, including observability, cost management, and security controls.
- Identify and implement service improvements across software, data, and platform components.
- Ensure compliance with organisational change, controlled releases, and documentation standards.
Collaboration, Leadership & People
- Support business process change, initiatives with technical analysis and solution design.
- Contribute to mentoring, and development of engineering team members.
- Communicate progress, risks, and technical considerations clearly to collaborators.
- Help establish and maintain engineering standards and procedures.
Technology You'll Work With
You will work on the latest, cloud-native data platform built primarily on Microsoft Azure, with opportunities to shape its long-term evolution. The environment supports large-scale, business-critical workloads across both real-time streaming and batch processing.
Data & Processing
- Azure Databricks, Apache Spark, Delta Lake
- Structured streaming, schema management, event-driven architectures
- Kafka and Azure Event Hubs for high-throughput data ingestion
Storage & Serving
- ADLS Gen2 and Delta tables as primary storage
- Additional tools such as Azure Data Explorer, Cosmos DB where appropriate
Languages & Tooling
- .NET, SQL, Python, Scala
- Git-based workflows, Infrastructure as Code, CI/CD, automated tests
- Observability via Datadog, Azure Monitor
Reliability, observability, and secure, automated delivery practices are core principles.
Requirements
You bring:
- Proven experience building and operating distributed or analytics-heavy systems.
- Hands-on experience with Azure and familiarity with AWS.
- Practical experience operating Databricks for both streaming and batch workloads.
- Strong SQL skills, data modelling expertise, and performance optimisation on large datasets.
- Proven understanding of distributed systems fundamentals (fault tolerance, stateful processing, resilience patterns).
- Experience supporting high-throughput, low-latency, or data-intensive systems.
- Proficiency in .NET.
- Ability to influence technical direction and mentor engineers.
Nice to Have
- Experience with Delta Live Tables, Unity Catalog, or Lakehouse governance
- Familiarity with Flink, ADX
- Background in low-latency, or performance-sensitive environments (e.g., finance, trading, telemetry)
Critical Success Factors
- Consistent delivery of high-quality cloud, data, and software solutions
- Strong consistency to product organisational change and engineering standards
- Production of clear test scripts, documentation, and support materials
- Effective communication within engineering and client contexts
- Solid database knowledge
- Ability to collaborate, build trust, and maintain high professional standards
Personal Attributes
- Honesty and trustworthiness
- Respect for others
- Cultural awareness and sensitivity
- Flexibility and adaptability
- Strong work ethic and accountability
- Proactive, continuous-learning demeanor