As a Software Engineer you will be is responsible for all aspects of the development of platforms and applications in this multi-dimensional role. This role works with Product Managers on specific issue design, Technical Architects on establishing designs for excellent solutions, Team Leaders on release planning, and fellow Engineers to execute the delivery of solutions. This is a highly skilled hands-on role requiring subject matter expertise, extensive proficiency involved in all aspects of cloud-based solutions to deliver complex features. Subject to their specialization, they will lead the design, development, testing, publishing, and/or support of different cloud-based products and solutions. They will be the providing subject matter expertise for customer implementation and cloud platform support. The role will work closely with a global team of engineers to build robust solutions that meet our business objectives following continuous integration and continuous deployment processes, while supporting Senior Software and Software engineers. Participate in technical requirements though to delivery. Meet quality gates for deliverables by ensuring that all content and information distribution channels are available at high quality and are current Mentor Senior Software and Software Engineers Ensure customer success when called upon to assist in complex issues Accurate estimates for all aspects of solution development Specific MBOs as agreed with Manager Essential Development experience with Java Knowledge of API development, particularly REST, and tools such as Postman Experience of JavaScript frameworks such as React Experience with leveraging JavaScript libraries as well as using package managers like NPM Good understanding of web markup, including HTML5, CSS3 Experience of working with Java Spring frameworks Advanced knowledge and experience of working with various debugging tools within Java, web dev tools and SQL environments. Experience with software design and development in a test-driven environment Experience with Agile development methodologies Knowledge of behaviour driven development practices using technologies such as Cucumber Experience of software automation tools such as Selenium. Knowledge of software performance testing and profiling tools Experience of version control systems e.g. GitHub Advanced knowledge of an IDE e.g., Eclipse, IntelliJ IDEA Experience of continuous integration systems e.g. Jenkins, Harness Advanced knowledge and understanding of software development life cycle methodologies. Knowledge and understanding of RDBMS such as Oracle, SQL Server or Postgres