£55K/yr
England, United Kingdom
Permanent, Variable

Senior Software Engineer

Posted by The Skills Network.

Purpose of the role

As a senior member of the technology team, the role holder will be responsible for the delivery of items in the agreed roadmap for the technology department, including delivering new features for TSN's technology offerings and supporting other members of the department with delivery.

Key Responsibilities

  • Manage delivery of new features and bug fixes, following the department development procedure within agreed timescales
  • Perform internal code reviews, focusing on maintainability, logic and general software best practice
  • Mentor junior colleagues, helping them to grow their skillset
  • Be involved in supporting the application, triaging bugs and feature requests from internal and external customers

Skills and Experience (essential)

  • Expert understanding of PHP, its library ecosystem and tooling – all of our systems are built in PHP leveraging both custom and framework approaches
  • Strong understanding of JavaScript, its library ecosystem and tooling – like most web development, our products use client-side interactions to enhance the experience of our users
  • Strong understanding of SQL Databases - preferably Postgres, though any RDBMS is acceptable
  • Computer science fundamentals, data structures, time, and space complexity – not because we are going to code-golf every day, but because our needs are often complex and good software requires solid fundamentals
  • Architecture fundamentals able to reduce complexity, understand concurrency, understand distribution – we service thousands of concurrent users over multiple platforms so building things well is paramount
  • Automated testing experience – we are striving towards having full automated regression, unit and integration tests and you need to be a part of it
  • Version control experience (preferably git)
  • You'll be very capable of solving problems and communicating them to both technical and non-technical people – there are a large number of non-technical stakeholders and users who we want to support
  • You have a good amount of experience in commercial software development, working with teams, full stack development and integrating disparate systems – we're not an R&D lab, we like to ship things which genuinely impact the lives of our learners and colleagues
  • You will have a history of delivering architectural decisions on the projects you have worked on and will be comfortable describing the real business value behind those decisions – being a senior comes with significant trust and autonomy

Skills and Experience (desirable)

  • Knowledge of Typescript and Vue – our newer projects use both as part of our modernisation efforts
  • Knowledge of additional languages – polyglot programmers tend to bring excellent practices from other ecosystems
  • Cloud experience, preferably Azure as we leverage many of its services – for those from AWS or GCP don't worry, the similarity is significant
  • Familiarity in writing tooling against third party API's – we prefer to use services that already exist instead of building everything internally
  • Experience in pragmatically modernising legacy applications – our products have existed in this space for many years and show their age

REF-215 040