We specialize in working with difficult and hard to maintain systems. You or your company has a product that over the years has grown stale and full of cobwebs? Is it written in some obscure technology? Maybe it’s unstable and unsecure but brings the company value? Would you like to stop putting out fires and again start adding new features? If yes, then contact us.
Provided services include among others:
First thing we do is an audit. Without it there is no way to know the scale of the problem. We analyse the system, its components, storage, security, infrastructure, etc. and at the end prepare a report based on which we can then decide further action.
Part of a healthy system are healthy development practices. We create a proposal for how the processes could be improved including development workflows, code reviews, release processes, etc. and help to introduce and instill them in the existing team.
Continuous Integration and Continuous Delivery/Deployment
To streamline development, a good CI/CD pipelines are a must in a modern development environment. We prepare them in, either your existing tooling or, if no such exists, we can discuss options and select best tools for your needs.
As a part of the audit we identify the potential security flaws and then work to mitigate them. This can range from updating system dependencies, to introduction of security measures in a form of VPNs, security management, etc.
We work to improve the infrastructure of the system, tailoring the hardware to actual system needs. By introducing containerization where possible, we add flexibility to choose where and how to run the system.
Monitoring and Logging
When running system operations, system monitoring and logging is crucial. We make sure to provide good visibility into the running system.
Developer Training and Mentoring
To run and develop a system efficiently, a good team is needed. We can help to educate and mentor existing employees and/or new hires, to bring up to speed with modern practices.
It is a production system. If our help is needed then there is a good chance that there are a lot of operational incidents. Part of our services we offer help with resolving them. This also gives us an additional insight into the system and allows us to help further improve it.
Once the system has a solid base in a form of good processes, has a sane amount of operational incidents that can be quickly resolved and fixed thanks to good observability, the time comes to start and improve the system it self. In cooperation with business stakeholders we can prepare a road map that addresses both the outlying technical dept and the new features.