department-of-veterans-affairs / va.gov-team

Public resources for building on and in support of VA.gov. Visit complete Knowledge Hub:
https://depo-platform-documentation.scrollhelp.site/index.html
281 stars 196 forks source link

Formalize a position regarding teams using standardized vs. bring-your-own tooling #67933

Open patrickvinograd opened 9 months ago

patrickvinograd commented 9 months ago

Question that arose during early Code Yellow discussion:

Should we standardize on a single set of tools, or allow teams to choose their own tools?

patrickvinograd commented 9 months ago

My take: VA.gov Platform is a very opinionated platform - it constrains what languages you use for frontend and backend, it enforces CI/CD approach, and it also constrains what tools are available. It would be a huge departure for an individual VFS team to pick a different monitoring or logging tool - they don't generally have sufficient infrastructure access to implement it on their own, so they would likely be incurring a bunch of technical debt for the platform team.

Some of those constraints may evolve over time (e.g. allowing a different backend language if we allow microservice deployments), but for now, no, teams have to use the provided platform functionality for observability purposes, and we should focus on making the developer experience of those tools as good as possible vs. spending calories enabling alternative tools.

But, since this question came up, it means (a) others may have other opinions and/or (b) the above constraints are not universally understood. So, it's worth documenting them as an architectural decision record for future reference.

The question about ensuring Datadog funding is IMO a separate issue.