How to Make a Technical Selection?

There are so many tradeoffs, how to carry on?

Chunting Wu
3 min readJan 23, 2023
Photo by Victoriano Izquierdo on Unsplash

Last week, an engineer asked me how to make a technical selection. And he provided a real-world example. Their organization wanted to implement an event-driven architecture, and there were three options available right now — MQTT, AMQP, and Kafka — but he didn’t know how to make a decision.

My answer, as always, was “it depends”.

“Everything in software architecture is a tradeoff”. — Mark Richards

Because of the tradeoffs, there will never be a standard answer, in other words, there will never be a silver bullet.

However, we always have to make a decision, what are the tradeoffs? At that moment, I turned back to him and asked.

  • Do you understand your requirements completely?
  • Do you know what these three techniques are exactly doing?

Take message queues as an example, I have written an article previously on what use cases to consider when choosing a message queue.

--

--

Chunting Wu

Architect at SHOPLINE. Experienced in system design, backend development, and data engineering.