Location: Brighton Start date: ASAP Rate: negotiable Reports to: Development Manager
The Senior Software Engineer is responsible for programming both large and small requirements, by undertaking more complex development tasks .
Drawing on industry-wide best-practice and a broad range of technical knowledge, the Senior Software Engineer is responsible for defining, and programming new productised software (sub-)systems.
To be successful, this individual needs to be enthusiastic, passionate and self-motivated, capable of learning quickly and reacting to a world of ever-evolving technologies.
Defining software architectures
Manage non-functional requirements Contribute to and support the architecture definition process, bringing structure, guidelines, principles and leadership to the development aspects of projects Manage architecture evaluation by testing throughout the software development lifecycle, giving LEO’s customers confidence that the system will work when rolled out Collaborate closely with all system stakeholders (ranging from the development team to stakeholders who have an interest from a security, database, operations, maintenance, and support perspective) to ensure that the custom software development will successfully integrate with its environment
Delivering software architectures
Own the technical aspects of software development projects, providing technical guidance and making technical decisions Provide coaching and mentoring to the development team as needed Manage quality assurance by maintaining code standards, design principles and source code analysis tools through to the use of continuous integration, automated unit testing, deployment automation and code coverage tools Design, develop and test your own code where appropriate
Skills and knowledge
B.Sc. in any of the STEM fields or equivalent demonstrable work experience Three+ years of experience with identifying issues and implement solutions to complex problems in medium to large scale backend infrastructure Demonstrable experience of analysing and solving difficult problems across the stack Two+ years experience of using open-source web development frameworks (preferable Django and React) to facilitate the creation of complex, database-driven websites, with an emphasis on reusability and “pluggability” of components, rapid development, and adhering to the principle of ‘don’t repeat yourself’ Demonstrable experience with ideally pytest and lettuce or something equivalent Demonstrable experience of creating complex solutions using industry standards and best-practice Excellent understanding of a wide range of technologies, processes, tools and systems, including enterprise-scale solutions Comprehensive knowledge of version control and release management with Git, Github or Bitbucket; Demonstrable experience with automated code base testing Demonstrable experience using Scrum methodology Demonstrable experience deploying and optimising responsive applications for mobile experience Excellent communication skills, both written and verbal.