Because of our broad experiences, we understand the concerns and needs that are specific to product development companies and have developed strategies to address them. Supporting all your needs is a commitment to clear, focused communications and an actively managed relationship.
Maintaining Your Knowledge and Learning – Just as knowledge management and organizational learning is critical to us, we recognize that it is critical to you. To start, you would play a technical management role in which you select a liaison to participate in regular design and status reviews. With our staff’s understanding of your strategic plans, we have the background to appreciate and communicate the pertinent knowledge from a project. To ensure that you learn from us, we formally review and publish the lessons learned, process improvement opportunities and product enhancement opportunities that you need to know. Going beyond the project, you, like other clients, may learn from our design and development methods.
Quality of Design and Architecture – Our product development process starts with understanding your requirements. We understand and fulfill your needs according to a product development process that we created from the best practices of more mature industries, management and IT consulting and software product management. The architecture and design is not only “good conceptual thinking” but is rooted in our staff’s formal computer science education’s and deep experience with object oriented design and data modeling. As we explore design issues and make design decisions, we include your staff to ensure that we are pursuing a solution that satisfies your short and long term needs. Given our relationship, we also ensure that the systems are architected for future expansion and easy maintenance.
Quality of Coding- We write high quality code because of our development processes, project management, education and our testing practices. Our development processes follow industry best practices including personal responsibility for completed, debugged modules, team-based design sessions and regular builds. We actively manage our projects with project management software tools, strong team communications and regular code reviews. All of our staff have college degrees in electrical education or computer science, attend internal training sessions and are provided reading materials on improving their development process. Our testing practices are extremely rigorous and include scripted testing, cross-testing and paired testers and developers.
Speed and Reliability – You hired us to get your product to market quickly. Since this is our business, we commit to being reliable and responsible. Since we both benefit from an ongoing, stable, long term partnership with your organization, we will set your expectations intelligently and clearly and meet those expectations so that you can rely on us in the future. Your success is our success.
Transaction costs – One barrier to handing off a project are concerns that the communication required to ensure that the project is well understood and managed will take too much time. For a foundation, we research and educate our entire staff on your business, competitive position and overall needs and interests. We are very clear in setting the scope and defining our working relationship. We regularly communicate status updates with you and explore questions and open issues fully, but efficiently. During the design and implementation, we plan for and document our work knowing that a future handoff will occur.
We would welcome the opportunity to discuss these results and our processes in detail and any of our clients would be happy to confirm these benefits.