Senior Software Developer
Senior Software Developer
About this Role
The IPO is a modern organisation which depends on its IT services to operate and innovate effectively. To provide up to date services to our customers systems need to be developed, improved, and maintained. This position plays a pivotal role in ensuring the core applications are reviewed and continually improved.
You will need the appetite to learn new technologies and methodologies for delivering high quality IT services. In this role you will work within a multi-disciplined squad using several technologies to build enterprise grade services. You will be expected to be proactive and take accountability for the squad assigned deliveries. The role will also require the investigation, diagnosis and fix of any system issues. A Senior Developer is expected to contribute to the technical strategy for the department.
As a multi-skilled individual, you will have the opportunities to develop and mature skills in a core role but extend this to skills typically aligned to other role types. You will have a high level of input in defining which additional skills you can develop.
- Take responsibility for the design, coding, testing and documentation of small scale to large, complex or mission critical applications in a cloud first environment using MS Azure with C# and Python
- Identify and manage problems, incidents, risks and issues
- Build automated tests to support our continuous deployment environments
- Implement toolkits and APIs for purposes such as integration, performance optimisation, security and scalability
- Responsible for ensuring that the team test and build activities follow agreed governance and processes
- Proactively apply HMG IA technical security controls according to ISO 27001 & the Security Policy Framework (SPF)
- Understanding yourself to be a leader (and the impact of your behaviour on others in a project team focused on results)
- Engaging Stakeholders (for mutually beneficial collaborative relationships outside of the team)
- Work across several multi-disciplinary teams to deliver highly focused and successful digital services
- Provide project / delivery management support when required
- Effective management and delegation of tasks within the team
- Applies “progress over perfection” principle
- Takes full responsibility for decisions and delivers
- Inner composure, recovers quickly from setbacks and learns from the experience
- Highly driven & inspires others to move things along and make things happen
Personal and Team Development
- Take responsibility for your own training and development
- Guides more junior members in their personal development
- Coaches and mentors’ colleagues
- Continuously improves technical knowledge and stays abreast of latest trends
- Shares knowledge of tools and techniques with your wider team and the business stakeholders
Technical Skills and Experience
- Has been a key player in delivering technical solutions as part of a large projects
- Excellent understanding of C#
- Desire to learn Python
- Experience in web services, REST
- Experienced with modern delivery models such as Scrum and other Agile methodologies
- Advocate of DevOps principles
- Has a deep understanding of architectural principals such as SOA and Micro-Services
- Experience working in a Microsoft Azure Cloud first team
- Experience with Azure DevOps
- Experience writing Unit Testing
- Experience with IBM IIB / ACE
- Experience with Java and Spring
- Experience with Git
- Experience with Scala
- Experience with Docker & Kubernetes
Civil Service Behaviours
When applying to work in this role, you will be assessed against the following behaviours as defined within the Success Profiles Framework:
Developing Self and Others
- Identify capability gaps for self and team.
- Take time to coach, mentor and develop other colleagues to support career development and succession planning.
- Reflect on own work, continuously seek and act on feedback to improve own and team’s performance.
Delivering at Pace
- Ensure the most appropriate resources are available for colleagues to use to do their job effectively
- Regularly monitor your own and team’s work against milestones ensuring individual needs are considered when setting tasks
- Allow individuals the space and authority to meet objectives, providing additional support where necessary, whilst keeping overall responsibility
- Encourage joined up teamwork within own team and across other groups.
- Collaborate with team members and stakeholders to share information, resources and support.
Making Effective Decisions
- Analyse and use a range of relevant, credible information from internal and external sources to support decisions.
- Consult with others to ensure the potential impacts on end users have been considered.
Communicating and Influencing
- Communicate in a straightforward, honest and timely manner.
- Ensure communication has a clear purpose and considers people’s individual needs and points of view.
Managing a Quality Service
- Develop, implement, maintain and review systems and services to ensure delivery of professional excellence.
- Identify risks and resolve issues efficiently.
If you feel you have the skills and experience needed for this role; please do apply now.
Interested in this role?
Enter your details and register your interest with usApply now →