Software Engineer
We are looking for an experienced Software Engineer with a focus on platform operations. You will work hands-on with an established Java and Spring application running on Kubernetes, ensuring reliable deployments, troubleshooting production issues and coordinating releases. You enjoy troubleshooting, coordinating changes and taking responsibility for keeping production services running reliably. About WirelessCar WirelessCar empowers the future of mobility by connecting vehicles and delivering cutting-edge digital services. Founded in 1999 and headquartered in Sweden, we have a strong global presence with offices in the U.S., China, Germany, India, and Japan, offering a truly global workplace with exciting opportunities for career growth. Owned by Volkswagen Group, today we connect over 18 million vehicles across 100+ countries and partner with leading OEMs, including Volvo, Jaguar Land Rover, Volkswagen Group, Nissan, and Subaru. About the Role Join us to keep core platform services of the largest automotive backend in the world reliable across both cloud and on prem environments. You will own the operational path from a successful build to a healthy deployment, coordinate releases, investigate alerts, manage configuration and database changes, and verify that services run as intended– without errors or repeated restarts. The role also includes developing and supporting shared components used by other teams. You will work directly with an established Java application and the Spring framework when an operational issue or platform change calls for code. Your initial focus will be strongly operational, with hands-on work in Kubernetes, deployment pipelines, application troubleshooting and database operations. You will work closely with application, database and platform teams, investigating issues yourself and involving the right specialists when needed. The environment includes established and newer platform capabilities, with consolidation being planned. You will help keep existing services running while supporting their continued improvement. You will bring expertise that helps the team build its operational capability and become a go-to person in this area. Responsibility for the services and their delivery remains shared across the team. The role includes an on-call rotation of approximately one week every six weeks. Your Impact In this role, you will:
Own the health of builds and deployment pipelines. Investigate failures, restore successful runs, and verify the deployed version and health of Kubernetes pods after each release.
Coordinate releases of a modular core service that multiple teams contribute to. Work with those teams on updates, changes and hotfix deployments across staging environments. Follow the required change-ticket process for higher environments and combine related changes where appropriate.
Maintain stage-specific configuration and coordinate certificate update deployments. Monitor certificate status, renew certificates when needed and initiate the required deployment tickets.
Monitor services using logs, traces, metrics and alerts. Diagnose application, Kubernetes and database issues, working with platform teams when the cause lies outside the service.
Develop and support shared components for other teams, including database proxies, logging frameworks and telemetry components.
Carry out or coordinate database migrations through deployment pipelines and support occasional AWS operations, including database sizing.
Keep the platform maintainable and secure by reviewing Renovate updates, upgrading Java and Spring, and addressing vulnerable dependencies.
Make targeted changes to Java services and shared capabilities, including dependency injection frameworks, feature toggles, caching, read/write routing and Kafka integrations, when needed to improve reliability or support a release. What We’re Looking For You bring a software development background and enjoy the operational work that keeps applications reliable. You are comfortable working hands-on with established systems, investigating unfamiliar problems and learning from colleagues. You work carefully, pay attention to detail and follow through to verify that changes have worked. You raise issues early, coordinate with others and help the team maintain a consistent level of quality. You understand that other teams and users depend on these services. You communicate clearly, share knowledge and recognise when to solve an issue yourself and when to bring in additional expertise. You'll bring Hands-on experience operating production services in both on-premises and cloud environments, including CI/CD pipelines, Kubernetes deployments, configuration changes, monitoring and incident troubleshooting.
The ability to diagnose failed deployments and unhealthy pods using logs, traces, metrics and alerts, and then verify that a fix has worked.
Experience making safe database and application changes across multiple environments.
Working knowledge of Java backend services, Spring and dependency injection, with the confidence to investigate and change application code when necessary.
Experience coordinating releases carefully and communicating clearly with application, database and platform teams.
It would be a plus if you have Deeper relational database expertise, including performance optimisation and operational maintenance.
Experience operating containerised Java applications in Kubernetes.
Experience with Jenkins and Concourse pipelines, Dynatrace, CloudWatch, OpenTelemetry or Kafka.
Experience with dependency maintenance, Java and Spring version upgrades
Knowledge of certificate management, TLS and PKI concepts