Client Snapshot: The client is a cybersecurity-as-a-service company offering a proprietary security platform with best-in-class automated compliance software and concierge consulting.
Project Overview
A team of Keyhole Consultants developed an automated aggregator and generator for a Cybersecurity client’s security assessment reports. These reports were the culmination of several days’ worth of an analyst’s evaluation efforts, requiring hours of manually reviewing, sorting, copy-pasting, and formatting to achieve the resulting document. This project was requested as a means to reduce this manual effort as much as reasonably possible while also providing the consistency and speed increases provided with workflow automation.
Technology Snapshot
The project design was a combination of two Dockerized microservices: one providing REST endpoints for integration with the client’s existing portal interface and the other housing the aggregation and templating logic for generating the report document. This separation of concerns allowed the services to scale independently within their Kubernetes clusters to match their workload while decoupling user metrics and workflow reporting tasks from the more-intensive generation logic. Both services were implemented as Java Spring Boot applications, exposing externalized configuration for connecting to client-owned S3 buckets and DynamoDB tables. Extensive unit testing was employed throughout the project using JUnit, alongside integration tests leveraging LocalStack containers for locally-deployed AWS services.
Consulting Areas of Note
In addition to development, the team also worked closely with client stakeholders to track and prioritize requirements within the project’s GitHub repository. They documented functional needs as GitHub issues to provide transparency into their progress and elaborated with technical designs for implementation details as warranted by the task. With the help of Keyhole project managers, these updates and corresponding estimates were communicated to stakeholders on a weekly basis, along with functional demonstrations of the features in action.
As the project neared completion of its time-boxed “Phase 1”, Keyhole consultants facilitated a smooth handoff to the client as the development ended. They bolstered the project’s documentation with additional instructions for production deployments and detailed remaining unknowns for the project as GitHub Discussions, allowing stakeholders to resolve them as they prioritized future enhancements. They also provided a comprehensive demonstration of the new workflow to client executives, showcasing the added functionality and generating a sample report. User feedback was exceedingly positive, and stakeholders projected that the deliverable would reduce their reporting time by roughly 50%.
Key Technologies
- Microservices
- Kubernetes
- Java
- Spring Boot
- DynamoDB
- REST
- AWS