Article summary
So, your initial software development agreement with Atomic Object is nearing an end. At this point, we have finished and launched your MVP, worked through your scope-controlled budget for app updates/improvements, or handed the reigns to your internal team. You now have three distinct options for continuing to work with us.
A Follow-up Engagement
This involves picking up where we left off to do more product development work with you. Typically, this happens when:
- You have a second phase that you’re waiting to execute until your first release proves its value in the market or with key stakeholders.
- You want to defer the second half of your overall budget until feedback and data gathered from real-world use of your initial MVP show you which direction is most valuable to pursue.
Either way, the nature and shape of the engagement would look similar to our initial work together: a team of developers likely supported with one or two designers and a delivery lead. This engagement would have to be coordinated with one of our office’s scheduling teams to ensure that we can fully focus the right team for your product development needs.
A Maintenance Engagement
If your product has achieved the primary goals of your capital investment, there may be not be a need to enhance its functionality or delivered experience. For a product in production use (i.e. not simply a prototype), you may need to make periodic operational investments to ensure that it remains supportable in the long term.
The nature of this maintenance work is mostly driven by the need to keep a product’s infrastructure, tech stacks, and code base in the safety zone of well-supported tools and services. Examples could include upgrading a web app codebase to use the latest version of its web stack (e.g. Ruby/Rails or Node/Express), ensuring a mobile app can be built using the last stable release of the iOS or Android SDK, or making sure the application works within the latest major browser or mobile OS releases.
This style of work is usually best scoped by developers familiar with your product or its technology. At most, it probably requires an annual engagement.
A maintenance engagement should also be coordinated with one of our offices’ scheduling teams. However, our work would probably involve a smaller team and shorter duration than your initial product development engagement, and it might not need the support of a delivery lead or designer.
A Support Agreement
Our support agreements help us respond to urgent issues when a team isn’t currently working on a product development, follow-up, or maintenance engagement for your product.
These agreements provide the support bridge during the breaks between your initial product development engagement and subsequent follow-up or maintenance engagements.
Our support agreements are intentionally limited in a few ways:
- We prefer to focus the nature of work done within a support agreement to investigating or addressing critical functionality or performance issues.
- We limit the amount of contiguous time spent working on a request to one or two days.
- We ask that you indicate whether your request should be treated as a high or low priority. High-priority requests are handled at a higher hourly rate than low-priority requests. However, we will treat high-priority requests as needing immediate attention, whereas low-priority requests can be scheduled during a developer’s down-time for the week.
These limits are specifically designed to minimize the impact of emergent needs on a developer’s other current full-time assignments. The same limits guard your dedicated team from constantly thrashing between multiple clients when they’re assigned to your product development or maintenance engagement.
The largest benefit to you, however, is the ability to directly reach out to a developer, designer, or delivery lead when you have an emergent need—without needing to schedule a formal team allocation.
Conclusion
Once your initial engagement is complete, we want you to feel supported for as long as possible. Our vision of becoming a 100-year old software company means that we intend to be available to support you and your product for its entire lifespan.