Welcome
This site is meant to be a repository of our collective knowledge on delivering software together and will be used to help us share knowledge, set expectations, and be consistent in providing great experiences for our customers.
This is our living document, so please suggest improvements or submit a pull request.
At DevFacto, we work on a variety of technologies for a diverse set of customers.
We tend not to follow a set of rigid processes and our teams are encouraged to be autonomous and own the solutions they work on in order to deliver value to their clients.
We hired you because you're awesome and expect you'll do great work, so you and your team are entrusted with working together to make the best decisions you can and to consistently deliver and WOW our customers.
This guide describes some of our ideas on how to do that, and is comprised of four high-level sections:
- Teams - team expectations on working together respectfully, collaborating, and staying productive
- Starting Right - early discovery and initiating projects with the right foundation
- Continuously Delivering - working together to continually deliver new value to our customers
- Transitioning Ownership - ensuring that moving from active development to maintenance happens effectively
You might notice that this guide is heavily influenced by ideas around Agile, Product thinking, Continuous Delivery, DevOps, and Design Thinking, as these ideas are shaping the direction that software development is heading.
Consider our ideal as the north star -- this is how we aim to deliver. We can not always meet these ideals, but be aware of the compromises and potential risks and try to make practical trade-offs when you make decisions.
If you're just reading this for the first time and are nearing completion of a deliverable, consider reading the Delivery Checklist first and make sure you're setting up the future owners for success.