11 — Technology · 114 stances · updated
Blueprint Radar
Mike Reams's stance on every technology in the Technology Reference Model, each with a one-line reason and the date it was set. It is one architect's opinion for a mid-to-large enterprise starting new work, not a fact about any product and not an endorsement by anyone named here.
- Standard64
- The default for its job. Use it unless there is a specific reason not to.
- Pilot31
- Worth a bounded trial on real work, with an exit plan.
- Watch15
- Track it. Not yet for production commitments.
- Retire4
- Start nothing new on it, and plan to move existing use off it.
blueprint-radar.csv ↗ for Build Your Own Radar · JSON ↗
Languages & Frameworks
Standard · 16
- .NET — Default platform for Microsoft-stack services; cross-platform and on a predictable LTS cadence.
- Angular — Opinionated full framework that suits large teams wanting one structure; fine where already established.
- axe-core — Default automated accessibility rules engine; wire it into CI, knowing it finds only part of WCAG issues.
- Django — Default Python web framework for data-backed apps; built-in admin and auth save weeks of work.
- Expo — Default toolchain for React Native: builds, updates and native modules without hand-maintained native projects.
- Go — Default language for infrastructure tools and lean network services; simple deployment as a single binary.
- Next.js — Default React application framework for server-rendered web apps; large ecosystem, though it pulls you toward one host.
- Node.js — Default JavaScript server runtime; use only even-numbered LTS releases in production.
- Python — Default language for data, ML and automation work, with the deepest library ecosystem in those areas.
- PyTorch — Default framework for training and fine-tuning models; most research code and model releases target it.
- React — Default UI library for web front ends; widest talent pool and component ecosystem.
- React Native — Default cross-platform mobile framework when your team already writes React.
- React Navigation — Default navigation library for React Native apps; Expo Router builds on it.
- Spring Boot — Default framework for Java services; mature, well documented and widely staffed.
- Tailwind CSS — Utility CSS that maps cleanly onto design tokens and stays consistent across teams without a custom CSS layer.
- TypeScript — Default language for browser and Node.js code; static types catch interface drift before it ships.
Pilot · 6
- Apache Camel — Mature JVM integration library with hundreds of connectors; trial it where code-first integration beats an iPaaS.
- Astro — Good fit for content-heavy sites that ship little JavaScript; trial it for documentation and marketing sites.
- Backstage — Open developer portal framework; flexible, but it is a product you build and staff, not a box you install.
- LangGraph — Explicit graph-based agent workflows with state and human review; trial it on one bounded agent use case.
- Ruby on Rails — Productive full-stack framework for small teams; trial it where Ruby skills exist, since enterprise talent is thinner.
- Sidekiq — Mature background job processor for Rails; adopt it with Rails, and compare with the built-in Solid Queue.
Watch · 5
- DeepEval — Test-style evaluation for LLM outputs that fits CI; the eval tooling field is still settling, so track before standardizing.
- Google Agent Development Kit — Young open agent framework tied closely to Google Cloud; track it unless Gemini platform services are already in use.
- Hotwire — Server-rendered interactivity with little JavaScript; strong inside Rails, less proven elsewhere, so track it.
- Mastra — TypeScript agent framework that is young and moving fast; track it before production commitments.
- Svelte — Lean compiled UI framework that developers like; smaller ecosystem and talent pool than React for enterprise work.
Platforms
Standard · 19
- Apache Airflow — Default open orchestrator for batch data pipelines; every major cloud offers it managed.
- Apache Kafka — Default backbone for durable, replayable event streams; heavy to operate yourself, so prefer a managed service.
- Apache Spark — Default engine for large-scale batch processing; most managed data platforms run it under the hood.
- Grafana — Default open dashboarding layer that reads from almost any metrics, logs or tracing source.
- HashiCorp Vault — Default dedicated secrets manager across clouds; note the source-available license since 2023.
- Jira Service Management — Practical ITSM for small to mid-size IT teams already on Jira; plan on Cloud, since self-managed has an end date.
- Kubernetes — Default container orchestration when you run many services; use a managed offering, not a hand-built cluster.
- Microsoft SQL Server — Default relational database in Microsoft shops; license cost argues for PostgreSQL where the stack is open.
- MLflow — Open default for experiment tracking and a model registry; avoids locking model metadata into one cloud.
- MySQL — Acceptable relational choice where an application requires it; PostgreSQL is the default for new systems.
- NGINX — Default web server and reverse proxy; stable, fast and understood by every operations team.
- PostgreSQL — Default relational database: open license, every major cloud runs it managed, and the extension ecosystem is deep.
- Prometheus — Default open metrics system for Kubernetes and services; its query language and exposition format are widely adopted.
- RabbitMQ — Default broker for task queues and request routing where you need messaging, not a replayable log.
- Red Hat Enterprise Linux — Default Linux where certified vendor support or long lifecycles matter; RHEL 10 supported to 2035.
- Redis — Default in-memory cache and fast data structures; Redis 8 added an AGPL option, and Valkey is the BSD-licensed fork.
- ServiceNow — Default enterprise ITSM and CMDB platform at scale; keep customization low to protect upgrades.
- Ubuntu — Default Linux for cloud VMs and containers when you do not need a paid enterprise subscription; LTS releases only.
- Windows Server — Required for Windows-only workloads; prefer Linux for new services that do not depend on it.
Pilot · 13
- Apache Flink — Strongest open engine for stateful stream processing, but costly to run; use a managed service and a real use case.
- Confluent Schema Registry — Use a schema registry with Kafka so contracts evolve safely; check its license terms against Apicurio first.
- Debezium — Log-based change data capture avoids dual writes; trial on one source system before relying on it broadly.
- Elasticsearch — Strong full-text search, but weigh its licenses and the Apache-licensed OpenSearch fork before a new estate.
- Grafana Loki — Lower-cost logging that indexes labels only; trial it where full-text search across logs is rarely needed.
- Grafana Tempo — Low-cost trace storage that pairs with OpenTelemetry; trial it if Grafana is already your observability front end.
- Istio — Adds mTLS and traffic policy across services, but it is real operational weight; trial it where those needs are proven.
- Keycloak — Self-hosted OIDC and SAML provider for cases a SaaS identity provider cannot cover; you own patching and uptime.
- Kong Gateway — Capable gateway on an open-core model; many enterprise features need the paid license, so price the full need.
- Langfuse — Open LLM tracing and evaluation you can self-host; trial it to see what your prompts and costs actually do.
- LiteLLM — One API across model providers with spend controls; trial behind pinned versions given its 2026 supply-chain incident.
- MongoDB — Fits document-shaped data with changing schemas, but the SSPL license and relational alternatives argue for a trial first.
- Trino — Federated SQL across lakes and databases is useful, but run it where one query layer clearly beats moving data.
Watch · 8
- Apache APISIX — Fully open API gateway with dynamic config; track it as an alternative to open-core gateways.
- DataRobot — Automated ML suite with a premium cost; hyperscaler ML platforms now cover most of its ground.
- Feast — Feature stores pay off only with many models sharing features; most teams do not need one yet.
- IBM watsonx.ai — Relevant mainly to IBM-centric estates; the hyperscaler platforms have broader model choice and ecosystem.
- KServe — Open model serving on Kubernetes; most teams are better served by managed inference until volume justifies it.
- Kubeflow — Broad but complex ML platform on Kubernetes; managed ML services cover most needs with far less upkeep.
- OpenText Content Management — Enterprise records management for regulated content; heavy to run, so justify it with retention needs.
- SigNoz — Single OpenTelemetry-native backend for logs, metrics and traces; track it as a lighter alternative to larger stacks.
Retire · 2
- OpenLDAP — Start new applications on OIDC and SCIM via your identity provider; keep LDAP only for systems that cannot change.
- Oracle Database — Start new systems on PostgreSQL; keep Oracle only where a packaged application or existing license demands it.
Cloud Services
Standard · 14
- Amazon API Gateway — Default managed API front door where you are on AWS; little to operate and integrates with Lambda and IAM.
- Amazon Bedrock — Default foundation-model access where you are on AWS; several model families behind one API and AWS IAM.
- Amazon DynamoDB — Default key-value store on AWS when access patterns are known up front; poor fit for ad-hoc queries.
- Amazon S3 — Default object storage where you are on AWS, and its API is the de facto interface other stores copy.
- Amazon SageMaker AI — Default managed ML training and serving where you are on AWS.
- Amazon SQS — Default managed queue on AWS for decoupling work between services; nothing to run or patch.
- AWS Lambda — Default serverless compute where you are on AWS, for event-driven work with spiky or low traffic.
- Gemini Enterprise Agent Platform — Default AI and agent platform where you are on Google Cloud; it is the renamed Vertex AI with agent services added.
- GitHub — Default source control and code review platform; the largest developer ecosystem and integration surface.
- GitHub Actions — Default CI/CD where code lives on GitHub; pipelines sit next to the code and the action ecosystem is large.
- Microsoft 365 — Default productivity and collaboration suite for most enterprises; identity, mail and files share one tenant.
- Microsoft Foundry — Default model and agent platform where you are on Azure; formerly Azure AI Foundry.
- Okta — Default workforce identity provider for multi-cloud estates; Microsoft Entra ID is the natural choice in Microsoft shops.
- Snowflake — Proven managed warehouse with low operational effort; watch consumption costs and prefer Iceberg tables for portability.
Pilot · 5
- Amazon Bedrock AgentCore — Managed runtime, memory and identity for agents on AWS; trial with one agent before standardizing.
- Datadog — Broad managed observability with quick time to value, but costs climb with hosts and data; model the bill first.
- GitHub Copilot — Easiest AI coding assistant to roll out where you already license GitHub; measure delivery outcomes before going wide.
- Port — Hosted developer portal with less build effort than Backstage; trial it if you lack a team to run a portal.
- Vercel — Fast path for Next.js front ends, but usage-based pricing and platform-specific features need a cost and exit review.
Retire · 1
- Cloudflare Pages — Cloudflare now points new sites to Workers with static assets and publishes a Pages migration guide; start there.
Tools & Standards
Standard · 15
- Alertmanager — Default alert routing and grouping for Prometheus-based monitoring.
- Ansible — Default agentless configuration management for servers and network devices; complements Terraform.
- Apache Iceberg — Open table format that keeps lake data portable across engines and vendors instead of locked to one warehouse.
- Argo CD — Default GitOps controller for Kubernetes: declared state in Git, drift visible, rollbacks by revert.
- cert-manager — Default certificate automation for Kubernetes; removes manual renewals, a common cause of outages.
- dbt — Default way to manage SQL transformations as versioned, tested code in the warehouse.
- Helm — Common packaging format for Kubernetes applications; most vendor software ships as a chart.
- Markdown — Plain-text format for documentation that lives with code, diffs cleanly and moves between tools without conversion.
- Model Context Protocol — Open protocol for connecting AI agents to tools and data; now broadly supported across model vendors.
- OAuth 2.0 — Open standard for delegated API authorization; follow current best-practice profiles rather than older grant types.
- OpenAPI Specification — Open standard for describing HTTP APIs; contract-first design, generated clients and gateway import all depend on it.
- OpenID Connect — Open standard for sign-in; use it for every new application instead of custom auth or legacy protocols.
- OpenTelemetry — Open standard for traces, metrics and logs; instrument once and keep the freedom to change observability vendors.
- SCIM — Open standard for user provisioning; require it from SaaS vendors so joiners and leavers are automated.
- Terraform — Most widely supported infrastructure-as-code tool; note the BSL license and keep OpenTofu as the open option.
Pilot · 7
- AsyncAPI — Open standard for documenting event interfaces; tooling is thinner than OpenAPI, so trial it on one event domain.
- Claude Code — Agentic coding that works across the repository; trial with clear review rules and measure delivery, not keystrokes.
- Cursor — AI-first editor with strong codebase context; trial it alongside other assistants and compare on real work.
- Dev Containers — Open spec for reproducible development environments; new joiners and CI get the same toolchain from one file.
- Fastlane — Still useful for scripting store releases, though hosted build services now cover much of what it did.
- Open Policy Agent — General-purpose policy engine; useful for admission control and authorization, but Rego has a learning curve.
- OpenAI Codex — Agentic coding from OpenAI in CLI and cloud forms; trial it where OpenAI models are already approved.
Watch · 2
Retire · 1
- Jenkins — Plugin sprawl and self-managed controllers cost more than hosted CI; build new pipelines on GitHub Actions.