Our Processes

Agile-to-Agile: A Different Kind of Engagement Model

Many software companies are familiar with – and have experienced – a variety of problems with the two most common outsourcing engagement models: the Remote Employee and the Remote Team models. Both models require the software company (client) to be at least partially responsible for making hiring decisions and managing the resources, and both deliver agreed-upon engineering capacity. To a great extent, these are so-called “body shops.”

The NMX Global Software agile-to-agile model is significantly different. It delivers engineering results, not merely engineering capacity. Our clients order and specify deliverables through an agile development process, much like what many companies already operate in-house. A “virtual” diversified engineering team possessing a wide variety of skill sets and levels perform the actual work. We assign work to specific engineering roles based on skills and specializations. This model is operationalized by our use of a variety of project management, development tool chain, and continuous integration and delivery platforms.

The NMX agile-to-agile model makes available to our clients far greater on-demand capacity and skills diversity than other engagement models. It allows us to fully leverage the capabilities of our resources, including optimal allocation of ultra-high skill and specialized talent, thereby delivering superior results at a lower cost to our clients.

Project Staffing Process

Our agile-to-agile methodology makes our entire talent pool available to all projects. Project management and architectural oversight teams typically persist with a given project for its entire life cycle, but we assign technical talent on-demand, applying various specializations and competencies as needed. Even small projects will utilize our most senior talent when needed. We groom our junior staff by pairing them with our senior engineers (and do not charge our clients for any such grooming), enabling our new hires to rapidly develop their skills and capabilities on the most significant and complex projects.

Delivering Innovation

The processes of software architecture, construction, and service delivery are undergoing rapid change and constant innovation. Nearly all software under development today will need to interface to an API, service interface, data format or protocol. The cost of being behind or out-of-step with innovations and standards is growing higher every day.

NMX addresses these problems by investing in competency development. We do so by ensuring that our staff is continuously researching, testing, prototyping and mastering all the technologies, platforms and frameworks our clients are likely to use in the foreseeable future. These activities are especially important with fast-moving open source projects.

Our goal is to have at least two staff members possess familiarity, in advance, with the technology used on a project. Thanks to our agile-to-agile engagement model, we apply such expertise to projects almost instantly during the design and ramp-up phase. If we need to apply specialized expertise during a long development cycle, then we expand capacity to meet the need.

Service Expectations

At NMX we set a number of goals for how we expect the relationships we develop with our clients will evolve. All of our processes and focus is on doing what it takes to achieve these goals.

  • First, we expect to start with one small project, over-deliver, and keep happy clients forever. We look to have a long term business relationship and wish to become a permanent resource that is always available and used whenever necessary to help our client meet its software needs.
  • We try to never say no. We expect to meet requirements and expectations without requiring lengthy negotiations.
  • We are available. Our workday span across sites is more than 17 hours long. A request will receive a response in < 4 hours.
  • We ramp up fast. For new clients we start engaging and delivering typically within one week. For existing clients we are “always on”.
  • We ramp down quickly. We understand that sometimes work needs to be paused (or canceled) for any number of unforeseen reasons. We can shelve a project, preserve documentation and project state, stop billing, and return to it later, on demand.

To summarize: Efficiently developing production-quality software is difficult and challenging enough. We endeavor to add exceptional value – without complication.