Software Developer/ Engineer/ Architect

Senior Java Software Engineer - Distributed Systems

At Workday, we help the world’s largest organizations adapt to what’s next by bringing finance, HR, and planning into a single enterprise cloud. We work hard, and we’re serious about what we do. But we like to have fun, too. We put people first, celebrate diversity, drive innovation, and do good in the communities where we live and work.

About the Team

Software Development Engineer - Distributed Systems Designs, develops, troubleshoots and debugs distributed software programs for enhancements and new products across multiple disciplines and multiple platforms. Capable of designing and implementing software able to manage the tradeoffs between data consistency, availability, partition tolerance. Develop, design and deploy software and tools in support of a data processing system, including highly concurrent transaction processing, distributed memory management, communication protocols, and efficient distributed data algorithms.

About the Role

In the Orchestration & Integrations organisation we develop code at the very heart of Workday’s cloud based software platform. We are responsible for building highly scalable tools and agents that empower the largest customers in the world to design and process enterprise integrations between Workday and their applications. We are also responsible for Workday’s Core Service Orchestration technologies, which are deployed in Workday’s data center’s and public cloud environments. We provide orchestration solutions for other Workday development and environments teams, allowing us to reach the next level of scale.The challenges we face enable our engineers to develop deep technical strengths in building the foundations of a cloud platform and hone the engineering skills to take on the most difficult of software engineering problems. 


The teams are made up of junior to senior engineers which are exceptionally innovative and have built highly robust, performant and scalable services. Positions within the Orchestration & Integrations organisation allow you to expand on your knowledge, experience and ensure your talents are always fully utilised.

Technology we teach and use everyday: Java, Scala, Akka, GraphQL, Yarn, Docker, Chef, Kubernetes, Jenkins, Kafka, ZooKeeper, RabbitMQ, Linux, Gradle.

Contact us if you:

  • Love to solve problems with code (and prove it works via automated tests!)
  • Have a passion for developing distributed systems and delivering them at scale while planning for future growth.
  • Design and develop enterprise solutions with high quality standards.
  • Have a strong sense of ownership, having worked on and monitored a service in a production environment.
  • Are excited by shipping new features and know that delivering to production takes more than just coding.
  • Understand software is made by humans and what that means for software development.
  • Strive to understand the big picture. Given the choice, you would prefer to collaborate than to go it alone.
  • Continuously look to grow your skill set.
  • Love working in an environment where teams are given autonomy and empowered to succeed.

Desired Skills:

  • Advanced Java experience with an interest in Scala / functional programming.
  • Commercial experience with distributed, concurrent, high-performance systems.
  • Interest or experience in one or more of the following is advantageous: Akka, Kafka, GraphQL or Zookeeper.
  • UNIX or Linux experience.
  • BS in Computer Science or related fields.