Senior Software Developers collaborate with Business and Quality Analysts, Designers, Project Managers and more to design software solutions that will create meaningful change for our clients. They listen thoughtfully to understand the context of a business problem and write clean and iterative code to deliver a powerful end result whilst consistently advocating for better engineering practices. By balancing strong opinions with a willingness to find the right answer, Senior Software Developers bring integrity to technology, ensuring all voices are heard. For a team to thrive, it needs collaboration and room for healthy, respectful debate. Senior Developers are the technologists who cultivate this environment while driving teams toward delivering on an aspirational tech vision and acting as mentors for more junior-level consultants. You will leverage deep technical knowledge to solve complex business problems and proactively assess your team's health, code quality and nonfunctional requirements. Job Responsibilities You will learn and adopt best practices like writing clean and reusable code using TDD, pair programming and design patterns. You will use and advocate for continuous delivery practices to deliver high-quality software as well as value to end customers as early as possible. You will work in collaborative, value-driven teams to build innovative customer experiences for our clients. You will create large-scale distributed systems out of microservices. You will collaborate with a variety of teammates to build features, design concepts and interactive prototypes and ensure best practices and UX specifications are embedded along the way. You will apply the latest technology thinking from our Technology Radar to solve client problems. You will efficiently utilize DevSecOps tools and practices to build and deploy software, advocating devops culture and shifting security left in development. You will oversee or take part in the entire cycle of software consulting and delivery from ideation to deployment and everything in between. You will act as a mentor for less-experienced peers through both your technical knowledge and leadership skills. Job Qualifications Technical Skills English at an intermediate level is a nice to have. You have experience using Java and experience in Object-Oriented programming. You can skillfully write high-quality, well-tested code and you are comfortable with Object-Oriented programming. You are comfortable with Agile methodologies, such as Extreme Programming (XP), Scrum and/or Kanban. You have a good awareness of TDD, continuous integration and continuous delivery approaches/tools. Bonus points if you have working knowledge of cloud technology such as AWS, Azure, Kubernetes and Docker. Professional Skills You enjoy influencing others and always advocate for technical excellence while being open to change when needed. Presence in the external tech community: you willingly share your expertise with others via speaking engagements, contributions to open source, blogs and more. You're resilient in ambiguous situations and can approach challenges from multiple perspectives. #J-18808-Ljbffr