Juan Pablo Buriticá explains how to use technical RFCs as a decision-making tool in your engineering organization to increase effectiveness. When implemented properly, technical RFCs can encourage trust and delegation, respectful discussions, knowledge sharing, and accountability and support good software design. Technical RFCs are widely used throughout open source projects to introduce new features, enhancements, deprecations, or general discussions on technical roadmaps. By embracing async communication, RFCs allow OSS maintainers working with teams of volunteers and users to discuss complex subjects with concrete outcomes and implement decisions. (A great example is the EmberJS RFC repository.)
Juan Pablo shares lessons learned while implementing technical RFCs as a management tool in different sized organizations, going as far back as his first experiments delegating technical decision making while increasing visibility and take advantage of knowledge sharing for a 15-person distributed engineering team formed in less than a year. One year (and 10 new members) later, the team had produced about 60+ technical RFCs that were also used as onboarding material, documentation, and most importantly, interface design aids.
Along the way, Juan Pablo describes in detail the challenges managers will encounter and provides tools to manage the process. You’ll leave with better visibility into technical discussions, a contextual record of technical decisions made for new members, tools to improve trust and accountability in system design, control mechanisms for engineers who code before they think, and a framework for risk management in software design and understand how to establish spaces for junior members to receive senior mentorship.
©2017, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • email@example.com