1
2 Comments

Software Engineers: Would you want a tool designed for engineers to build and share your software architecture decisions?

I've had an idea I've been mulling over the past couple weeks and wanted to get feedback on whether the problem extends beyond myself.

  1. The problem: Software architects, CTOs, VPEs etc. don't have a single source of truth to document changes (usually visual) to their technical architecture
  2. The problem: Software engineers don't have a place to comment, learn and ask questions about software architecture decisions
  3. The problem: It's really hard to learn good architecture just by seeing it in its current state, the real value is in the why it got to its current state

The idea: Make a visually pleasant platform for designing & documenting your technical architecture & tech stack where changes are documented and transparent, sharing is available both within your team and to the public, and where commentary is inviting and contextual.

I frequently find myself making diagrams on various platforms (lucid charts & google slides mostly) to explain changes to our technical infrastructure and needing to re-reference them for myself as i make new changes, but also to onboard new engineers (which always ends up being a bit of a mess). I personally would love a visual representation of my tech stack where i can drill down and see the connections, and rationale behind the decisions. In many ways I actually think my mission is similar to that of stackshare except that i don't find seeing a list of the tools a company uses as useful as seeing how they are used and then contextually why they made that decision. That's why in my idea as well I would like to have the option to publicly represent your stack for questions and feedback except where stackshare focuses on sharing first (something not everyone is comfortable with) I am focusing on getting the knowledge distributed on your team first.

So what do you think? Is this a real problem? And if this doesn't apply to you I'd also love feedback on how to assess whether this problem is real or not better! Thank everyone!

  1. 2

    Hi @aiyer,

    This is definitely a problem faced by multiple companies. There are a few attempts at solving it, but most fall short in various aspects.

    Ideally a visual representation of the architecture should be in sync with the the actual architecture. It's easy for early stage startups to draw architecture diagrams, add to a documentation reference, but the diagram doesn't get updated as the architecture evolves. Developers should be able to connect the diagram to their prod environment and have the diagrams always in sync automatically.

    Moreover, developers / devops generally do not like drawing diagrams and dragging and dropping icons across the screen, basically doing design work. The ideal solution should parse some sort of configuration file and generate the graph from it; a great example is the C4 Model (https://c4model.com/).

    Future developments can include exporting the diagrams to Terraform, CloudFormation or Serverless. Major architecture design decisions are usually taken as a team, drawing on a whiteboard or using collaborative tools online. Afterwards the developers have to write it down as Infrastructure as Code. Skipping this step and going straight from the diagrams to infrastructure code will be a time saver.

    Finally, the cost implications of the infrastructure change / design always come up. Cloud providers are not always clear with pricing. There are tools out there to estimate cost, but it's just one more thing to do, far away from building the product our users love.

    In summary, this is a problem worth solving in my opinion and in an ideal world, the solution should:

    • sync with the actual prod env without developer intervention
    • be parsed from a config file rather than another drag and drop tool
    • export to various infrastructure as code tools
    • estimate cost implications of the designed infrastructure

    I understand this is way beyond the scope of a v1.

    Best of luck if you decide to build this!!

    1. 2

      Hey, I really appreciate this thorough and thoughtful reply. Makes me really glad to join the community.

      I think you pointed out some key pain points in your list up there! And yeah I agree a lot is probably out of the scope for an MVP. For now I still think there isn't a great tool for documenting architecture in an easy way that developers are willing to spend any time on making, reading, or understanding. I'm thinking of a way to use README files with some special syntax to generate something like a C4model. Not automated but still in line with software engineering practices.

      I know this is a problem Id love to see solved for myself which encourages me to go through with building.

Trending on Indie Hackers
After 10M+ Views, 13k+ Upvotes: The Reddit Strategy That Worked for Me! 42 comments Getting first 908 Paid Signups by Spending $353 ONLY. 24 comments 🔥Roast my one-man design agency website 21 comments I talked to 8 SaaS founders, these are the most common SaaS tools they use 20 comments What are your cold outreach conversion rates? Top 3 Metrics And Benchmarks To Track 19 comments Hero Section Copywriting Framework that Converts 3x 12 comments