Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Cover image for Writing RFCs
Carlos Cuesta
Carlos Cuesta

Posted on • Originally published atcarloscuesta.me

     

Writing RFCs

ARequest For Comments also known asRFC, is a process that captures ideas and proposals about a specific topic to discuss andfind consensus 🤝.

An RFC involves adocument or a series of documents 📑, which aredrafted,reviewed and eventuallyapproved orrejected by a group of people.

What are the benefits?

Planning

Writing down your idea into a document will clarify your thoughts and will help organizing them in a structured manner.

Anticipating 🔮 the problem you aim to solve and envisioning potential solutions is key toidentifying issues andedge cases.

Alignment

As a team, it's important thatdecisions 🎙️ aremade byreaching aconsensus 🤝. It's very common that as humans we have different opinions and points of view.

RFCs are an effective process to include everyone's opinions 💭 and reach a decision everyone agrees with.

Documentation

The document 📑 itself is avaluable piece of documentation as it captures the context, the problem, the solution, and the decision-making process.

It will serve as areference forfuture team members and will help themunderstand thecontext and thereasoning behind thedecisions made ❣️

An RFC is usually the initial step in the decision-making process before creatingArchitecture Decision Record which I previously wrote about ✍️

Better decision-making

One of the steps of the process is to share the RFC with the team tocollect feedback and review the context and the proposed solution.

Involving multiple people 🧠 in the decision-making process is key to achieve high quality decisions, as it will bringdifferent perspectives andsolutions to the tablereducing the chances ofoverlooking important details.

You can think of it as acode review, but forideas andproposals.

When you should write an RFC?

It depends 🙈 but generally I would recommend writing them whendealing withhigh-impact decisions andmajor changes thatrequire consensus and alignment such as:

  • Introducing a new service in your company 🚀
  • Major changes in the architecture 🏗️
  • Big features that have an overarching impact 🆕

It's up to you to decide when to write them, but in my opinion you shouldweight ⚖️ theeffort 🥵 and theimpact 💥 since it's a time-consuming process that involves many people.

How to write an RFC

Define a template

When writing them, a common practice is to have a template to write ✍🏼 all the documents in the same way.

You'll find a lot of templates online, butthis is the one I use 👈

RFC Template

❗️ Use a tool that allowscollaborative features (comments, suggestions etc) to make it easier for the team to review and provide feedback such as Google Docs or Notion.

Share document for review

Once you have the document ready, share it with the team for them toreview 👀 andprovide feedback.

Address feedback

After the reviews come in, you shouldaddress thecomments,questions andconcerns andincorporate anysuggestions if appropriate 🖊️.

Make a decision

Finally, after the document has been reviewed and the feedback has been addressed and collected, it's time tomake a decision.

The team should eitherapprove ✅ the RFC and move forward with the proposal orreject ❌ it.

Examples

In case you're looking for inspiration, there are many organizations and communities that use RFCs to propose and discuss new ideas, here are some examples:

Conclusion

RFCs are a powerful process togather feedback,align the team anddocumentdecision-making. They're a great way toreach consensus as a team representing everyone's opinion.

I encourage you to give them a try and see how they can help you and your team to make better decisions! 🫰

Top comments(0)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

Lead Web Engineer @n26 • JavaScript, ReactJS and OpenSource ❤️
  • Location
    Barcelona
  • Work
    Lead Web Engineer at N26
  • Joined

Trending onDEV CommunityHot

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp