Senior Software Engineer (Web)

Deadline for applications has passed.

Key information

Job reference
R1395
Salary
Competitive with benefits
Applications closed
21 December 2023, 23:59 GMT
Hours per week
36 (full time)
Posted 22 November 2023
Background texture taken from the lab imagery.

Senior Software Engineer (Web)

This is a full-time, permanent position on Crick terms and conditions of employment.

Summary

This is an exciting opportunity to join one of the world’s leading research institutes at a crucial time in its evolution, and play a definitive role in shaping it for the future.

The Software Engineering and AI team within the Francis Crick Institute is responsible for delivering technology, application and software services to the Crick. This role will play an integral and leading role in the support and development of key operational applications for the Crick.

You will be a senior level software engineer with a strong leaning towards open source technologies and experience in several languages, platforms and environments, and with a sound knowledge of web security.

Key responsibilities

These include but are not limited to:

  • Take a technical leadership/mentoring role for other team members with respect to software design, architectural approaches and development best practice

  • Design and develop high-quality, maintainable software to meet project needs and deadlines (including the interpretation of project requirements and technical specification documents across multiple domains)

  • Providing application support to a range of science/laboratory/enterprise related applications (across different platforms and technology stacks)

  • Help establish the feasibility of technical proposals by developing prototypes and experimenting with new technology

  • Assist with creating and supporting a productive and efficient standardised development work-flow (including versioning, automated deployment, automated testing, defect management and environment set-up and controls, as appropriate for each project)

  • Seek continuous improvement to products and services, and new ways of collaborating with peers and colleagues inside and outside the Crick

  • Produce, update or otherwise maintain documentation for projects, and where needed present project walkthroughs/overviews back to the team and other collaborators.

  • Assist with workload planning by providing estimates

Key experience and competencies

The post holder should embody and demonstrate our core Crick values: bold, imaginative, open, dynamic and collegial, in addition to the following:

Essential

  • Have a wide range of skills, with clear expertise in Python web development and demonstrable experience in as many of the following areas as possible; Application and software development (PHP, JavaScript, Java), CMS Development (Drupal V8+), DevOps (Server Config, Docker & Jenkins), Web Services (SOAP/REST, XML/JSON  etc)

  • A solid understanding of Front-end development; HTML, CSS & JavaScript (including common libraries & frameworks, CSS pre-processors and responsive techniques)

  • Good knowledge of object orientation and MVC frameworks

  • Solid experience with Linux command line, and some knowledge of the set-up and running of web servers (i.e. Apache/NginX), knowledge of containers/docker Experience in database technologies: SQL, NoSQL, Graph etc.

  • Evidence of understanding and experience of web-related security issues and best practices, including the ability to identify and close vulnerabilities in line with industry standards

  • Experienced in leading code reviews and contributing towards technical design decision making

  • Experience of good software engineering principles, including version control (GIT), unit testing, documentation and release/deployment processes (CI & CD) Experience of managing an automated deployment environment

  • Able to work effectively without close supervision, and of working successfully and collaboratively in multidisciplinary teams

  • Excellent communication skills, with the ability to build effective relationships at all levels and the ability to communicate technical concepts to a non-technical audience

  • Self-motivated and committed to learning and personal improvement

  • Able to work accurately under pressure and delivering with tight deadlines

  • Degree in Computer Science or equivalent experience

Desirable

Experience of knowledge in any of the following areas would be beneficial:

  • Background in or knowledge of life sciences/health/pharma

  • Experience with other technologies/languages (Or other CMSs)

  • Any experience of Machine Learning

  • Experience of working with High Performance Clusters and/or Public Cloud (AWS/GCP/Azure)

  • Experience of Agile or similar delivery oriented project methods and tools

  • Good understanding of systems and business requirements processes

  • Building data visualisation tools