When was the last time your work benefitted an entire country?
At the Scottish Government that’s not an abstract goal – it’s our daily mission.
We’re looking for Senior Software Engineers to play Joining our growing team, you’ll a key role be enabling wider digital transformation across the public sector.
Positions exist for application development and platform engineering. Our growing Identity team provides a terrific opportunity to develop, scale and manage an identity service for public sector organisations so the people of Scotland can access services with a single account – see ScotAccount to learn more. In our Platform team you would be building common capabilities with opportunities to build common work in platform engineering and building out an emerging Internal Developer Platform.
Our Tech Stack
We welcome developers interested in working across both the front and back end (recognising you may be stronger in one of the areas).
Our services and applications run on AWS (Amazon Web Services) using Kubernetes, backend services are written in Java, with Node JS and Typescript used for front end applications. Python is used with IaC. Persistence is provided by S3, DynamoDB and Redis. We use Grafana/Prometheus for metrics and dashboarding; and Gitlab for CI/CD. The cloud platform team operate both an AWS and Azure platform. Gradle is used to build the services.
Responsibilities
Availability and capacity management
You manage service components to ensure they meet business needs and performance targets.
Development process optimisation
You identify process optimisation opportunities with guidance and contribute to the implementation of proposed solutions.
Modern standards approach
You competently apply modern standards approach and guide others to do so.
Programming and build (software engineering)
You collaborate with others when necessary to review specifications.
You use the agreed specifications to design, code, test and document programs or scripts of medium-to-high complexity, using the right standards and tools.
Service support
You identify, locate and fix faults.
Systems design
You design systems characterised by medium levels of risk, impact, and business or technical complexity.
You select appropriate design standards, methods, and tools, and ensure they are applied effectively.
You review the systems designs of others to ensure the selection of appropriate technology, efficient use of resources and integration of multiple systems and technology.
Systems integration
You define the integration build.
You co-ordinate build activities across systems.
You understand how to undertake and support integration testing activities.
User focus
You collaborate with user researchers and can represent users internally.
You champion user research to focus on all users.
You prioritise and define approaches to understand the user story, guiding others in doing so.
You offer recommendations on the best tools and methods to use.
Success Profile
Success profiles are specific to each job, and they include the mix of experience, skills and behaviours candidates will be assessed on
Experience:
Lead Criteria 1 – You run it. Your experience developing and deploying an application, allows you to define the monitoring, alerting, and operational procedures of an application in order to consistently identify, locate and fix faults.
Lead Criteria 2 – Team working. Your experience participating and improving team processes means you are able to identify opportunities to optimise processes and contribute to the implementation of proposed solutions; and help the recruitment and onboarding of new staff members.
You write it. Your experience building solutions to problems of high complexity allows you to use agreed specifications to independently design, code, test and document programs or scripts of high complexity, using the right standards and tools.
You design. Your experience engineering systems, with a variety of technologies and patterns allows you to design systems, choosing appropriate technology, approaches, and embedded security controls.
You deliver. Your experience implementing features, enables you to take end-to-end ownership of defining and implementing a feature.
You know your users. Your collaboration with product and design teams enables you to define the user needs in a story and communicate them to technical colleagues.
Technical / Professional Skills:
This role is aligned to the Senior Developer – Non-Management role within the Software Engineering/Development Job Family.
You can find out more about the skills required, here: Software developer - Government Digital and Data Profession Capability Framework.
These skills are assessed by technical assessment. Full details of the assessment and skills being assessed will be shared in advance with all candidates invited to this stage.
Behaviours:
Making Effective Decisions - Level 4
Working Together – Level 4
You can find out more about Success Profiles Behaviours, here.
How to apply
Apply online, providing a CV and Supporting Statement (of no more than 750 words) which provides evidence of how you meet each of the six Experience criteria listed in the Success Profile above.
Candidates will have their applications assessed against all Experience criteria. If a large number of applications are received an initial sift will be conducted on the Lead Criteria highlighted above. Candidates who pass the initial sift will have their applications fully assessed.
If invited for further assessment, this will consist of an interview and DDaT Technical assessment where the behaviours, experiences and technical skills outlined in the Success Profile will be assessed.
The sift is scheduled for w/c 14th April.
Interviews and DDaT Technical assessments are scheduled for w/c 28th April, however these may be subject to change.