Pay Down Your Technical Debt

ON ANY PROJECT THAT IS IN PRODUCTION (i.e., it has customers that are using it), there will come a time when a change must be made; either a bug needs fixing, or a new feature must be added. At that point there are two possible choices: you can take the time needed to “do it […]

Continue Reading

Colocate Pattern

This basic pattern focuses on avoiding unnecessary network latency. Communication between nodes is faster when the nodes are close together. Distance adds network latency. In the cloud, “close together” means in the same data center (sometimes even closer, such as on the same rack). There are good reasons for nodes to be in different data […]

Continue Reading

Conway’s Law

Conway’s Law is an adage named after computer programmer Melvin Conway, who introduced the idea in 1968. It concerns the structure of organizations and the corresponding structure of systems (particularly computer software) designed by those organizations. In various versions, Conway’s Law states: · Organizations which design systems are constrained to produce designs which are copies […]

Continue Reading

Multitenancy and Commodity Hardware Primer

This primer introduces multitenancy and commodity hardware and explains why they are used by cloud platforms. Cloud platforms are optimized for cost-efficiency. This optimization is partially driven by the high utilization of services running on cost-efficient hardware that manifests as multitenant services running on commodity hardware. The decisions made in building the cloud platform also […]

Continue Reading

Leadership Principles

Leadership is founded on holding and executing certain principles—namely, the notions of trust, vision, safety, and clarity. Establish Trust Leadership is a learned skill. Some people have a natural tendency to lead, whereas for others it is a struggle. Leadership is all about trust. Trust is in the examples we set for others and the […]

Continue Reading

Clever Code Is Hard to Maintain

DEVELOPERS ARE OFTEN ASKED TO CREATE MIRACLES. They must find clever ways to make today’s project code work with yesterday’s antiquated legacy software containing multiple patches. And through skill and ingenuity, they may create numerous lines of clever code that finally get the job done. But clever code may only create future maintenance problems due […]

Continue Reading

A Project Depends on Teamwork

A PROJECT IS AN ENDEAVOR OF A MULTIDISCIPLINARY NATURE. It can be seen as a collective effort, jointly performed by people of great diversity. Once deployed according to their own unique skills and competencies, and properly coordinated, team members are able to produce major results and fulfill the expectations of the project’s stakeholders. If we […]

Continue Reading