About NCC Group
Thanks for checking out our job opening; we are excited that YOU are interested in learning more about NCC Group. We are on a mission to make society a safer and more secure place. Our people are the ones who make that mission possible; a global community of talented individuals working together towards a safer future. We aim to create an environment where everyone can reach their full potential. We work together, we are brilliantly creative, we embrace difference, and we want you to help us in our mission, as a Python/PHP Software Engineer. Take a look at our website here to learn more about why we’re one of the leading global cybersecurity consulting firms.
Summary of the role
NCC Group is looking for a talented Python/PHP Software Engineer to join our consultant systems team, building and maintaining our evolving suite of applications. You will be expected to work both independently and alongside the wider team on both new and ongoing projects, producing tools for the department to use in day-to-day operations, as well as applications that are client-facing and internal-facing. You will have a passion for technology and considerable experience developing scalable and secure applications, and will ensure the architectural system design is extendible and maintainable.
Key responsibilities
- Write performant, reusable well-documented code within a rapidly growing code base
- Ability to articulate ideas clearly to the rest of the technical team
- Advise on technologies and evolving techniques to the benefit of the products we produce
- Able to review peer’s code giving clear feedback and following best practices
- Work within an agile team using SCRUM practices to deliver quality code at a pace
- Be motivated to work remotely and organized in your time management
- Ability to be self-motivated and work independently
Requirements
- Ability to work with Linux environments
- Have or obtain SC Clearance
- Working knowledge of Python 3
- Working knowledge of PHP
- Understanding of Frameworks for PHP & Python
- Experience of RESTful design / working with RESTful APIs
- Experience of both front end and back end coding
- Experience of Web development HTML/CSS/JS
- Experience working with Jinga2
- Experience working with YAML / JSON / XML
- Knowledge and experience with micro-service oriented architectures
- Docker (Compose)
- Excellent knowledge of Git Version Control
- Experience with both SQL & NoSQL databases
- Experience with Python Dependency management
- Experience writing Project documentation
- Experience managing issues through Github/Gitlab
- Ability to debug and maintain existing legacy code as well as develop new functionality and services to meet requirements within a service-oriented architecture
- Good knowledge of software architecture, object-oriented development, design patterns, and coding best practices
- Solid understanding of CI/CD cultures and pipelines within GitLab
- Experience leading software development choosing libraries/frameworks and setting design principles
Desirable but not essential
- Linux networking knowledge (IP Routing/VLANS/Proxies)
- IPTables knowledge
- OpenVPN knowledge
- Ansible experience
- APT Packaging & GPG Signing
- Hashivault knowledge
- FreeIPA Knowledge
- AWX/Ansible Tower Knowledge
- Experience writing python text-based user interfaces
- Knowledge of Virtual Machines & Cloud VMs
About your application
We review every application received and will get in touch if your skills and experience match what we’re looking for. If you don’t hear back from us within 10 days, please don’t be too disappointed – we may keep your CV on our database for any future vacancies, and we would encourage you to keep an eye on our career opportunities as there may be other suitable roles. If you do not want us to retain your details, please email [email protected]. All personal data is held in accordance with the NCC Group Privacy Policy. We are committed to diversity and flexibility in the workplace. If you require any reasonable adjustments to support you during the application process, please tell us at any stage.