What we believe in
In software development the most important factor is to organize your staff in autonomous teams. When you have a cross functional team that can handle the entire life cycle from service and product design to development, deployment and maintenance, then your team can be fast. Of course it is a challenge to find the right people, with the right experience, but strive for autonomy, and split up your organization when the teams are getting too big.
Minimizing external dependencies is important to achieve autonomy. Therefore it is important to pick the right tools, services and platforms. Cloud based services are great today. There are no businesses too large or too small, or not even too secure, to host stuff in the cloud. At a low cost you will benefit from great automated build tools, and other DevOps services with release trains set up in no time to get your stuff live with little effort. Having your big data in the cloud also makes it easier to analyze and apply AI (artificial intelligence) and machine learning. Very often analytics teams are centralized and the data scientists lack the domain knowledge. Owning your big data and being in control will leverage your business.
You build it, you own it should be the mentality of the entire team. That will lead to commitment, quality and the speed you need.
Agile is a worn word, but nevertheless more important than ever in order to adapt to the changes around us. In essence agile means that a product, service or feature must be developed and launched iteratively. Start by defining your MVPs (minimal viable products) in all aspects. Product in this case can be a component, a feature, or a set of features. The point is to get the stuff that you are building into the hands of your users as quickly as possible. That's when you know if you've done something great, and if not, the next release is just around the corner.