Custom Software Development
Vative’s core service is developing custom software applications for our clients. Our team members have decades of experience developing complex custom software applications. We have worked across a diverse group of vertical markets ranging from industrial automation, aerospace & defense, medical diagnostics, chemicals, consumer packaged goods, insurance and banking.
The common themes in the majority of our client projects that our team members have worked on are evolving requirements, complexity, and time to market pressure. We are no strangers to working for clients that have a significant opportunity cost to being late to market with their new products.
Our sweet spot is a project where the client’s requirements are not set in stone and can highly benefit from a more flexible iterative approach. We pride ourselves in our ability to quickly adapt and respond to change.
When we find a good match we assemble a team(s) consisting of approximately five to nine software professionals. In cases where we are working on larger scale enterprise projects we assemble multiple sub-teams of approximately five to nine software professionals. We aim to keep our sub-team size around five to nine people so that we can benefit from fewer layers of communication.
After we complete our project discovery process, which often times will include some initial prototyping, we begin working off our client’s product backlog. Our team’s work in two to three week sprints. At the completion of each sprint we demo working software to our clients, and perform a retrospective where we capture a list of opportunities for improvement.
Our average project length can vary greatly depending upon the project scope. In most cases our projects will last anywhere from six months to three years. Often times our customers will break their larger scale projects into multiple production releases. The benefit of this is two-fold, to begin capturing revenue as well as valuable customer feedback.
Over the years, we have built up a practice of helping companies turn around key projects that are experiencing signs of distress.
Although there can be a multitude of reasons why a project gets off course, the one common variable that we see by the time we get brought in is that the client is dealing with significant quality issues and time to market pressures.
We have experience turning around large scale projects that have been offshored and are in serious trouble. In these cases, we tend to find situations where a large company has utilized internal offshore staff or has contracted with an external offshore company. In the majority of cases this decision was made largely based on price. In these situations we tend to find a project that has claimed to be almost complete for many months. Additionally, we often hear that the offshore resources fix one defect and introduce several more defects.
By the time we get brought in, the client has typically lost confidence in the offshore team and is open to utilizing a high quality onshore team.
In addition to our custom software development services, we also offer agile training services. Our software professionals are well versed in multiple agile development methodologies ranging from extreme programming to SCRUM. Before deciding which approach is appropriate for our clients, we first conduct in-depth interviews of their team members.
We don’t hold the belief that any one software methodology is superior to another. There are several excellent agile methodologies that each work well under different circumstances. Before recommending a particular approach we first need to understand the the skill level of the team members, the project characteristics, and the company culture.
When we conduct an agile training engagement we make sure that we combine both classroom style instruction with on-the-job “real-world” instruction. We do this by rolling up our sleeves and working side-by-side with our client’s project team on a pilot project of their choice. After the client’s project team is at a point where they can operate independently, we then provide support on an “as-needed” basis.