Hybrid Agile Process
While we love the Pragmatic Programmer and the Agile Manifesto, we are hired to do a job and can not truly dictate a ‘capital A’ Agile approach. We strive to iterate frequently and deploy working code often. We plan and document so we can measure progress and understand that software is a journey not a destination.
This critical layer of development is best when it’s a blend of humans and machines, in our opinion. We leverage the Cypress Testing framework and Gerkin syntax to automate the tests that can be automated. We then rely on human testers to examine boundary conditions in applications and environments.
This is the layer where we execute unit tests of business logic, report on code conflicts, scan code for security issues, validate dependencies and scan third-party packages for known vulnerabilities.
We believe that humans should plan and orchestrate the promotion of code to production environments, but the actual deployments are best left to the machines. We script the infrastructure and deployment pipelines out of a main branch on the repository so that we can have predictable deployments and known artifacts of running code.
We allow you to plug into our DevOps toolchain and gain momentum without having to build the DevOps culture from scratch. We can support your existing development teams and coach them on deployment automation, application telemetry, and feedback cycles that are fast and controlled.