How We Work

Our process

At Batch22, we use industry-standard processes to make sure we ship our projects on time and on budget. We understand that software processes need to be nimble and adaptable to changing requirements, and we always keep our clients in the loop regarding the status of the project. We strive to apply a logical 8-step process from the first meeting until the completion of the project. This allows us to better track our progress and improve customer satisfaction.

Problem definition and understanding

In order to find the best solution, we need to clearly define and understand the underlying problem. While this can sound straightforward it is anything but. We need to understand the specifics of your industry, the way you currently approach the issue and how we can improve on that. Many times the solutions we offer need to go through multiple iterations until we reach a variant that solves the problem in a robust and efficient manner. And most times it not only addresses the initial issue, but opens up new opportunities for growth.

Requirements gathering

After the initial problem definition we tend to involve the stakeholders that are directly or indirectly affected by the problem we are trying to solve. We listen to all perspectives and gather a list of requirements. After a number of iterations, we submit it for approval to decision makers.

Solution proposal, talking options

The fun part begins, where we design our solution, taking into account relevant technologies and techniques, prior work and industry standards (in software development and your particular industry). Inevitably, some aspects will involve different options. We will submit these and the relevant tradeoffs to the involved stakeholders and jointly decide on the path forward.

Together with the solution we will develop a budget on how long the rest of the stages would take and the expected costs. These would include not only developer effort but also any other resources necessary, such as cloud infrastructure, devices, etc.

Implementation

With the requirements clarified and the budget approved, we will move on to implementation. We use industry standard project management and development best practices to ensure that our project is on time and on budget.

Among the methodologies that we are using are:

  • Agile, particularly Scrum methodologies so that we can deliver a series of intermediary versions of the solution that can be tested, validated and presented to the client. It also helps us keep the project on time and budget and react quickly if unforeseen circumstances arise;
  • Test-driven-development to ensure that as many of our components are robust and correct before assembling them into the final solution;
  • Continuous integration/Continuous delivery(CI/CD), increases productivity and reliability and allows us to have shorter release cycles.

Testing

Testing is crucial to producing robust, efficient products that follow the agreed-upon requirements. It is performed continuously in parallel with implementation and before deployment as we assemble the final deliverables.

Deployment

Depending on the requirements there are multiple options for deploying a software project in production. Chief among them: Cloud deployment, which allow for low cost initial deployments and ease of scaling up when the product is getting traction On-premise deployment, which provides better control and might be, in certain industries or for specific use-cases, the only legal option Batch22 can assist you in both cases in setting up a robust and scalable architecture to deploy the delivered product.

Maintenance

In reality, software work never stops. After deployment the product requires correctness and performance monitoring, fixing issues that may arise, updating software components. We can provide you with a maintenance plan that will ensure that your product is always up to date and running smoothly.

Let’s Build Something Great Together

Ready to start your software product with Batch22.ai? Contact us today to schedule your initial consultation.