Software Engineering & Integration
Most of our projects involve an element of web development and are a mixture of bespoke software development and integration. A typical project will take many best of breed tools, frameworks, components and cloud services that together meet the client’s requirements. We mainly deliver multi-tier service based architectures and have integrated many system types. While we have expertise in a portfolio of third party products, we remain vendor-neutral. Mostly we use open source products, we have also released and support some of our own where there is a gap in what is available. Sometimes the use of closed source 3rd party products is warranted. Some of our core areas of focus are listed on the Technology page. We will always want to use the right platform for the right job. Nobody benefits from using the wrong technology.
We will ensure you get the maximum value from your core systems. We can help you in a strategic and rollout capacity for legacy integrations, rehabilitation and replacement. We focus on constraints from legacy systems and plan for them from the beginning so that project objectives, timeframes and costs are realistically aligned. A platform that utilises your core systems in a way that reduces dependencies between system components will allow your platform and systems to evolve harmoniously with minimum disruption.
We embrace a DevOps approach to the configuration and deployment aspects of software development. Our goal is to enable continuous delivery on every project we engage on; focussing on building, testing and releasing software quickly and frequently. Using source control systems, automated functional and security testing, continuous integration over the controlled source and automated build and deployment removes the human error inherent in deploying a complex and highly integrated solution and helps to facilitate the ability to deliver regular releases.
Our development teams are focused on continual improvement and our development practices encompass:
- Peer reviewing of code through code management processes
- Test driven development where possible
- Continuous integration
- Embedded test teams
- Security and code quality reviews
Our preferred project approach is normally Agile Scrum but we are flexible according to client and project needs. As with all our other services we often work in integrated multidisciplinary teams throughout the project lifecycle.