System Design Mind Map For Building Distributed Systems

modern-buzzwords

System design is foundational for building software architecture in relation to the system under consideration. For building distributed systems, the role of system design has been the key focus area starting with back-of-the-envelop calculations during the brainstorming phase. Whether you are preparing for a system design interview or a workshop as part of distributed system’s planning phase, covering the broader spectrum of knowledge areas is essential from a software architecture…

Read More

Tech Tip #6 – Use C4Model for documenting software architecture in a modern way

Tech Tip: Using C4Model for documenting software architecture in a modern way using the technique created by a software architect (Simon Brown). It has been inspired by Unified Modeling Language and 4+1 architectural view model and adds the modern approach to simplify documenting and visualizing the software architecture. C4Model is the modern way to document and visualize software architecture with different levels of abstractions – Context, Container, Components and Code…

Read More

5 Books Every Software Architect Should Read

Software Architecture Books

This article starts with selecting 5 books every software architect should read as part of their career journey. These books provide broader coverage of software architecture including architecture patterns, methodologies, design patterns, practices & tactics, documentation practices, and much more.  Other Recommended Books Book Title Purpose & Usage Patterns of Enterprise Application Architecture– Martin Fowler A classic collection of prevalent enterprise patterns including domain logic patterns, data source architectural patterns,…

Read More

Tech Tip #5 – Use Industry Standards And Guidelines For Documenting And Evaluating Software Architecture

Tech Tip: Using industry standards and guidelines for documenting and evaluating software architecture provides consistency and common semantics across the entire organization. Software architecture is a well-defined field and while there are informal practices in terms of documenting and evaluating architecture, the recommendation is to be aware of industry standards and apply them consistently. If you are new to the field of software architecture, click here to read about the…

Read More

Top 10 Tips You Should Know As A Modern Software Architect

With fast-paced technology evolution, software architecture is evolving each day with new patterns and technology choices. This article summarizes the top 10 tips you should know as a modern software architect and the list is not limited but evolving. #1 – Be observant of frameworks providing acceleration towards Microservices Architecture (MSA) With Microservices Architecture in mainstream adoption, most of the frameworks either have started remodeling themselves as per Microservices Architecture.…

Read More

Essential Engineering Skills For Every Software Architect

Engineering-Skills

As a software architect in today’s world, expectations of essential engineering craft have increased drastically with the rise of the spectrum of technologies. Full-stack architecture knowledge, product & design thinking with customer centricity, startup mindset to do experimentation applying platform engineering, proactive production monitoring & observability applying SRE practices, and many more engineering practices are the new normal. The breadth of Engineering Knowledge is becoming more important than the depth…

Read More

Engineering Blogs Every Software Architect Should Read

As a Software Architect, being aware and gaining broader context is a table-stakes in the current environment. But with information overload with many sources (social media, blogs, news articles, etc.), it is essential to prioritize your reading preferences. The decision to what to read and what not to read is a personal decision and your area of interest/skillset (user experience, web, data, integration, machine learning / artificial intelligence, IoT, DevOps,…

Read More

Top Ten Metrics You Need To Measure Productivity

Top Ten Metrics You Need To Measure For Productivity

Follow @ankurkumarz Follow @VedcraftTeam Measuring & tracking the progress of any program is key to success as quoted in the famous saying: If you can’t measure it, you can’t improve it. Considering a large number of metrics available, this article summarizes the top ten metrics to measure from the delivery team’s productivity perspective: Metric Purpose Description Feature Cycle Time To measure the time-to-market of a feature to generate business value…

Read More

How To Be A Successful Software Architect with Power of 3 Ps

To become a successful software architect, you need more than just technical skills. Today’s technology advancements equip you with powerful tools to elevate the business model for your clients in consideration of new social norms. A software architect is playing the larger role in digital or technology transformation and to be a successful software architect, you need to diversify your skill-set in all three areas – people, process, and platform…

Read More

Introduction to Software Architecture

Software Architecture

If you are starting your journey as a software architect, getting to know the fundamentals of software architecture as per industry standard (IEEE 42010) is the first step. This slide deck is an effort to unpack the IEEE definition of Software Architecture & provide the guidance and recommendation to make your journey easier. Refer to post on Logical Architecture & Physical Architecture for further details on creating effective architectural artifacts.…

Read More