Description
Senior Software Developer
Whitehall Resources require a Senior Software Developer for a 6 month initial contract based Plymouth.
Candidates must either hold, or be eligible to go through BPSS Clearance.
Purpose:
You will build solutions to complex problems. You will enable others to do the same by providing day to day technical guidance using methods such as detailing industry standard best practice, code reviews, pair programming and mentoring.
You will work with other Senior Software Developers, System Designers and Subject Mater Experts in building and delivering solutions that will enable the organisation to streamline its business processes as well as providing support for new and existing business applications
Main Duties:
- Builds, iterates upon and maintains services in accordance with designs and best practice to meet end-users' needs, including integration, performance optimisation, security and scalability.
- Drive best practices including sharing knowledge of tools and techniques with multi skilled team members, and the wider group.
- Creates appropriate level of documentation relevant to the work in accordance with agreed standards.
- Takes part in quality assurance reviews of own and others' work according to agreed plans and in line with site standards to ensure well-engineered, fit-for-purpose products.
- Translates logical designs into physical designs taking account of target environment, performance requirements and existing systems.
- Actively engages with the wider software engineering community to identify good practices we can adopt and adapt, and shares own experiences with that community.
- Work with cross functional teams, alongside the Senior Developers to translate business requirements into technical specifications, providing impact assessments on proposals and identifying and managing risks to meet business needs.
- Takes part in 2nd-line support of applications and platforms, including occasional support outside of office hours
Essential Criteria:
- Delivering professional software web applications.
- Evidence of an awareness of emerging trends in web applications.
- Experience in Back End development, with detailed knowledge of Python.
- Understanding and experience using JSON data and REST architecture.
- Building automated tests (eg unit tests, integration tests and acceptance tests) to validate solutions.
- Building test environments and knowledge of deployment technologies including Jenkins for continuous integration.
- Building Vagrant and VirtualBox virtual development environments.
- Using Git for version control.
- Using Unix-like operating systems, eg Linux and/or Mac OS.
- Using open source technologies to build web applications.
- Using tools to test and debug code, for example curl, postman.
- Writing code that is secure and an awareness of OWASP.
- Understanding of software design principles.
- Ability to quickly research and learn new programming tools and techniques.
- Demonstrates good communication skills
- Demonstrates a logical analytical approach to problem solving
- Demonstrates the initiative and determination to complete tasks
Desirable Criteria:
- Front End development (eg CSS, HTML and JavaScript)
- Using open source technologies for web applications, eg Postgres, RabbitMQ
- Using SQL
- Using Docker
- Using Alembic with SQL Alchemy
- Working within an agile environment