Process


TeraCode is an Agile development company. Our process includes:


Minimal Documentation

We work in a rapidly changing environment. Products must be flexible, adaptable - Agile. Our documentation process is designed to support the fast integration and assimilation of information to get a project started quickly and correctly. We require a minimal amount of documentation - which is collected through written specs, chats, emails and dialogue. The goal is to build a domain model along with use cases and wireframes. These documents, though simple, are the foundation for product development and quality assurance.

Back to top

Domain Driven Design

Domain drive design is based on using common language to describe the business problem being solved by software. When a client uses language such as "Client" or "Order Form" or "Creative" - we model those same terms in the domain model. This enables us to map complex issues and problems in a model diagram that accurately describes system requirements. Both the business people and the developers can use the model to discuss functionality and features without the burden of technology stacks, development environments and so on that usually create a barrier between the business and development teams.

Back to top

User Stories and Wireframes

Use cases or user stories are very powerful tools for developing software. And, they also serve as the foundation for test cases. Ultimately, an application and its quality are perceived by the users experience. Backend functionality can be tested with a high degree of automation, but the use cases enable us to ensure proper coding and testing of user facing functionality.

Back to top

Weekly Code Releases

Weekly (or bi-weekly) releases allow us to push out code to test servers regularly and enable the client to see on-going progress, give feedback and get early testing cycles started. The regular release and feedback process is critical to the process to ensure the project doesn't go off-track. We work closely with clients to plan each release and this has the advantage of allowing our clients to change priorities from week to week as well.

Back to top

Continuous Integration

Continuous Integration is a part of the Agile process and helps increase the speed with which we deliver builds. It relies upon a common code repository, automated builds, self-testing builds (through unit testing), daily code commits, daily builds, and automated deployment.

Back to top

On-going Refactoring

On-going Refactoring means that we support a steady stream of changes to the system requirements and can manage these changes with minimal interruption to the schedule.

The demand to be flexible and agile is increasing. We believe that every project needs to support the ability to change, adapt and scale with minimal effort, time and cost. Each project is started under the assumption we will be making on-going changes, have new challenges presented, and shrinking timelines. We are your best partner when we anticipate your needs and are capable of delivering.

Back to top

TeraCode provides offshore development services to established and emerging technology companies in the web application, client-server and mobile...


At TeraCode our mission is to help our clients achieve the greatest possible success in their business through a strategic partnership that provides...


TeraCode is a high-end, boutique development company with a small, diverse set of clients spanning across the United States and Europe. Started in...


Our Offices

TeraCode maintains offices in Boston, London and Argentina. All development services are actually performed in Argentina. Boston and London are staffed with...


Our Employees

Our greatest resource is our employees. We seek out the most talented individuals we can hire and help develop them personally and professionally...