JUXT is accelerating the adoption of Cloud Native We talk with stakeholders from across your organisation and run deep-dive sessions to discuss the systems and features we'll build through face-to-face meetings, white-boarding tools, consuming documentation, designing artefacts you have already, and taking copious notes. Discovery might happen over a half-day, or many days for larger projects.
Our goals during discovery are:
- to understand the context of the project in-depth
- to create a backlog of high-level product features
We split the backlog into phases, each lasting 6 to 12 weeks, and typically resource and price work phase-by-phase. Phasing helps us break down large projects into tractable pieces and allows our clients to take stock at regular intervals.
Once Discovery is complete, we create a Statement of Work covering the first phase of the project, which is a formal agreement outlining how many engineers we will devote to the project, how long for, the agreed rate(s), and the works we expect to complete.
Once we’ve agreed a Statement of Work, we begin planning for delivery. We assign appropriate engineers, confirm and execute all onboarding steps (such as signing NDAs and creating relevant accounts), create shared channels of communication (we prefer Slack), organise a project kick-off meeting, and add other regular meetings (such as standups and demo sessions) to the diary.
We also establish a light-weight but effective governance structure that assures our projects without introducing unnecessary bureaucracy. This includes regular check-ins with JUXT senior management to discuss progress.
This Pre-Delivery work helps us ensure that everything is in place to make the best start.
This is where we bring our skills and experience to bear, to build exceptional things, fast. During delivery we’ll always:
- Work iteratively, delivering small changes incrementally and seeking regular feedback.
- Communicate regularly and clearly, so that progress on the project is well understood.
- Be ready for change, and react to it quickly.
Working iteratively means deploying features early and often, and seeking feedback to validate our path. With each iteration we will:
- Break down the next high-level feature into detailed engineering tasks.
- Work with regular stand-up meetings that project stakeholders are welcome to join.
- Conclude our iteration with a demonstration session, or Show & Tell, to explain recently delivered features and system components.
Many of our projects continue to evolve through repeated phases of delivery, but when live systems aren’t under active development we will often look to create a Support & Maintenance agreement.
Under a Support agreement we’ll provide expert help and guidance, as well as corrective and preventative maintenance to the system we’re supporting. We’ll apply essential security updates and fix bugs if found.
Stability and security are of the utmost importance, and any changes we make will typically be in service of these two goals.