Senior Developer - Software Engineer (Back-End)

General Description of role

As a Back-End Software Engineer working in the Emerging Technology team, you will take the lead on designing, developing, releasing, and maintaining java based back-end systems. You will work closely with researchers and other software engineers to develop existing prototypes into efficient production-ready systems. You will be comfortable owning the development of innovative new systems from scratch with a high degree of autonomy. You will be joining a team focused on early-stage product development in emerging technologies and nascent markets, and will enjoy rapid iteration and moving between projects as circumstances change.

Department
Technical
Salary
Competitive
Location
London
Type of Hire
Permanent
Ref No
270

Responsible for

 

  • Development and maintenance of new Nominet products
  • Investigating and engaging with new trends, technologies, packages and libraries
  • Solving complex problems with no precedent and taking responsibility for key design decisions
  • Packaging software and data for continuous delivery/deployment
  • Writing high-quality documentation
  • Developing relationships with people across the Nominet business

 

Working relationships

 

  • Head of Wireless Technology
  • Director of Emerging Technology
  • Emerging Technology team
  • Project Management Office
  • New Product and Business Development team
  • Key Nominet staff

 

Key result areas

 

  • High level of service delivered based on internal feedback and features implemented as part of product roadmaps
  • On-time and on-budget project delivery
  • Collaborative, productive working relationships with colleagues

 

Core skills

 

  • Superb Java skills + Java8 functional programming
  • Experience with working with SQL databases
  • Familiarity with Git version control system
  • Ability to implement clean, robust, thoroughly-tested, maintainable, and standards-compliant code (that leverages frameworks where possible) in an agile working environment
  • Ability to working on a breadth of back-end technologies whilst ensuring a coherent, high-performing solution
  • Ability to scrutinise and provide feedback on specifications
  • Being a good team player with a positive attitude and able to work with different people across departments and levels
  • Ability to understand product development within the context of the business and how products will contribute to the success of the company
  • Ability to work from a prototype and collaborate with researchers to deliver production-ready systems
  • Ability to produce documentation that is well-structured and well-written
  • Effective communication with technical and non-technical colleagues, including giving demonstrations of your software

 

Desirable skills

  • Maths/Science/Telecom background
  • The following skills are desirable but not essential:
    • Linux sysadmin/DevOps experience
    • Experience with MS Azure cloud environment