The Web Principal Software Engineer is a key team member of the SG Digital New Product Development (NPD) team, working on the Digital Portal product line.
The NPD team is aggressively adopting new technologies, architectural principles and approaches to development, deployment and monitoring.
The Principal Software Engineer will be critical to ensure the highest coding standards, the adherence to the industry best practices, the quality of deliverables to the QA, the Operational Excellence teams and their adoption by operators.
A Principal Software Engineer will be expected to both lead and mentor less experienced developers, actively contributing to their day-
to-day activities and training needs.
The Web Principal Software Engineer will have a central role to play to ensure that the Web Software Engineering teams are aligned with overall Group and NPD architectural & Technology (A&T), QA and Operational Excellence strategies, and also to act as a key influencer for such.
Along with the Development Manager and Senior Software Engineers, the Principal Software Engineer will ensure that new technologies and architectural principles are utilised appropriately and with rigour, whilst delivering the stability, security and performance that the SG Digital platforms have become synonymous with over time.
The Principal Web Software Engineer will be expected to actively contribute to the overall technical strategy for new product development.
The role will also be required to help build a development capability with new and existing development teams, ensuring that best of breed engineering practices are implemented, particularly around CI / CD and also monitoring and support requirements.
There will be a mixture of small, but strategically significant projects, and also large scale complex programmes of work, all delivered in an Agile format with direction from Product Management but with delivery via a tightly contained team focused on quality deliverables across the platform.
Key Accountabilities :
Development of new features and functionality for NPD Digital Portal products and services, specifically on core modules and components
Production and / or validation of the solution architecture for specific NPD projects, including KPIs and SLAs
Code reviews for products and services delivered across the wider NPD team
Code quality for products and services delivered by the team for whom the Principal Web Software Engineer is responsible
Ensuring that products and services adhere to agreed performance KPIs and are delivered in line with NPD pipeline requirements
Ensuring that all products and services adhere to agreed architectural and technology (including security) standards
Maintenance of relevant technical sections of the internal Knowledge Base
Where required, line management and mentorship of a small team of Software Engineers
Proactively identify and address areas of material improvement, notably around performance, security, maintainability and scalability
Key Responsibilities :
Ability to act as the design authority and provide high level estimates of software deliverables for planning purposes
Supporting the Development Manager and Heads of Operational Excellence and QA to ensure continuous quality improvement in the development teams
Where required, provision of 3rd line support and supporting production deployments
Supporting recruitment of technical staff onto the New Platform team
Identification and support of the training needs of the broader NPD team
A Bachelor's degree (1st or 2 : 1) in a traditional science subject, ideally computer science, engineering or information systems from a well regarded university
Extensive experience developing commercial Enterprise Web applications
Experience of Agile development processes and scrum roles and responsibilities
Demonstrable experience in designing distributed, high-volume, highly available, complex transactional systems
Ability to document technical solutions in a variety of formats and to constructively share knowledge with less experienced team members
Excellent verbal and written communication skills, including presentations to peer groups
Experience in contributing to and influencing technical strategic planning or responsibility for a technical strategy
Good managerial and leadership skills, able to motivate teams as well as driving change and handling difficult and complex project development activities both internally and externally
Should be opinionated, especially about technology
Technical skills of relevance :
Hands-on design and web development experience of high-volume transactional responsive web-based systems
Excellent hands-on experience in developing using ES6, HTML5, CSS3, React / Redux
Excellent hands-on experience in developing web applications using at least one popular web frontend framework except react (Angular, Knockout etc.)
Excellent experience in using a widely adopted web framework / CMS like Drupal, Joomla, Django etc
Some experience of the GraphQL language
Practical knowledge of manual and automated testing tools like Cucumber, Selenium, Webdriver.io.
Strong practical knowledge on automated deployment tools like Jenkins, Bamboo, AWS CodeDeploy etc
Experience in the establishment and use of a development pipeline with such technologies as Docker, Ansible, Maven, Jenkins, Sonar and Git (BitBucket)
Strong experience with SEO scoring and optimisations required to achieve high ranking
Strong experience on Analytics, namely Google Analytics and the Google Tag Manager framework
Strong experience in identifying, resolving and optimizing portal performance and responsiveness
Demonstrable experience with TDD and / or BDD
Demonstrable experience with SSO implementations
Demonstrable experience with System Optimization techniques and tooling
Demonstrable experience in developing large distributed web systems and concepts such as caching, load balancing, usage of CDN
Experience of full stack development including RDBMS
Experience of developing and deploying distributed eCommerce (or similar) platforms in the cloud, using at least one major cloud provider (e.g. AWS or Google Cloud)
Hands on experience with backend caching frameworks like REDIS, memcached and frontend caching tools like Varnish
Expertise in PHP (and / or Python) and PostgreSQL or MySQL would be beneficial
General scripting skills : Bash, Perl, Python etc.
Domain knowledge is not required (although strongly preferred), but having worked on major eCommerce or any significant widely distributed system is.
The role will be based at SG Digital’s office in Athens, Greece. Travel may be required both to SG Digital’s development offices and also to SG Digital’s sportsbook customer base.
The Principal Web Software Engineer will frequently be required to make himself available out of normal office hours for meetings with remote development teams and SG Digital’s non-European operators.