Full Job DescriptionOur people work differently depending on their jobs and needs. From home working to job sharing, go to remote and flexible working to find out more.
This role is based in India and as such all normal working days must be carried out in India.
Join us as a Senior Software Designer
This is an opportunity for a driven Software Designer to take on an exciting new career challenge
You’ll have the opportunity to build a wide network of stakeholders of varying seniority
It’s a chance to develop your existing technical skills and advance your career as you contribute to a number of workflows on our UI Platform
What you’ll do
You’ll apply widely agreed software engineering principles and methodologies to design, develop, test and maintain applications and services to achieve the stated business and technology goals within required budgets and timelines.
You’ll also align to the organisation’s architectural direction and principles, and make sure that the applications and services being built adhere to them.
It’ll also be your responsibility to:
Support the design and development of reusable libraries and application programming interfaces for use across the organisation
Support the design and development of software that is amenable for a greater automation of build, release testing and deployment process on all environments
Support the reuse and sharing of platform components and technologies within the software engineering teams
Deliver software components to enable the delivery of platforms, applications and services
Write unit and integration tests, in automated test environments to ensure code quality
Oversee the quality of work, making sure that it meets the technical standards for all services output
The skills you’ll need
You’ll need a background in software engineering, software design or database design and architecture, as well as experience of developing software in a SOA or micro-services paradigm.
You’ll also need:
Development experience in a programming language
Familiarity with C#, ReactJS and other JS frameworks like TypeScript and NodeJS
An understanding of Agile methodology and development tooling
A background of implementing programming best practice, especially around scalability, availability and performance
Experience of test-driven development alongside the use of automated test frameworks, mocking and stubbing and unit testing tools
Knowledge of the key phases of the software delivery lifecycle and established software development methodologies