Coding Quality Initiatives At Hawk
Our technology teams undertake various initiatives to ensure we bring world-class quality at every level of development.
The ways our teams develop, communicate and monitor ensure the highest levels of quality
We use the latest methodologies to design and build our technology, resulting in scalability, efficiency, flexibility, and resilience.
Zero-bug Policy
We employ various modern strategies to reduce software defects, including Test-Driven Development (TDD), three quality gates before production, peer reviews, and mutation testing.
Examples of our process include:
- Bugs are fixed within a set timeframe (depending on criticality, 1-month max)
- Systematic test-first approach in line with Test Driven Design (TDD) principles
Continuous Delivery
Continuous delivery prioritizes frequent and automated software releases, to reduce risk of changes rolled out. This means a streamlined the development pipeline, minimizes errors, and allowing for rapid adaptation to changing requirements, ultimately enhancing software reliability and customer satisfaction.
Examples of our process include:
- Rolling our changes several times a week
- The size of our releases (and the associated risk of bugs) are small
Code Quality
Code quality scanning and exception monitoring are actively used to ensure adherence to coding standards, identify potential issues pre-release, and track runtime errors/exceptions in live applications.
Examples of our process include:
- Code quality - we employ world-class tooling for code quality scanning (sonarQube, PMD, spotbugs)
- Exception monitoring – we employ Sentry for exception monitoring, as well as metrics based monitoring with Grafana/Prometheus and more
Development Culture
Our development culture practices ensure an aligned approach to collaborate, communicate, and approach problem-solving. At Hawk AI we emphasise a focus on fostering innovation, continuous learning, and collaboration.
Examples of our process include:
- Regular trainings driven by team members through our HAWKademy program
- Low-profile knowledge sharing sessions (Including gamification through Gotcha of the week)
Team Structure
Our teams take end-to-end responsibility for their deliveries. They follow the Team typologies model with several stream-aligned team groups delivering functionalities required by the customers. These teams are supported by teams that provide the platform, as well as teams specialized on the complexity of creating or closing alerts using the full toolbox of machine learning and AI, analytics and big data.