Category Archives: Enterprise Architecture

Key Architectural Components of a Data Lake

data lake architectural components

Data lakes are data storage systems that allow data to be stored, managed and accessed in a way that is cost-effective and scalable. They can provide a significant competitive advantage for any organization by enabling data-driven decision-making, but they also come with challenges in architecture design. In this blog post, we will explore the different components of data lakes, including the data lake architecture. Before getting to learn about data lake architectural component, lets quickly recall what is a data lake. What is a data lake? A data lake is a data storage system that allows data to be stored, managed, and accessed in a way that is cost-effective and …

Continue reading

Posted in Architecture, Data analytics, Data lake. Tagged with , .

Data Science Architect Interview Questions

interview questions

In this post, you will learn about interview questions that can be asked if you are going for a data scientist architect job. Data science architect needs to have knowledge in both data science/machine learning and cloud architecture. In addition, it also helps if the person is hands-on with programming languages such as Python & R. Without further ado, let’s get into some of the common questions right away. I will add further questions in the time to come. Q. How do you go about architecting a data science or machine learning solution for any business problem? Solving a business problem using data science or machine learning based solution can …

Continue reading

Posted in Career Planning, Data Science, Enterprise Architecture, Interview questions, Machine Learning. Tagged with , , , .

15 Tricky DevOps Architect Interview Questions & Answers

DevOps Architect Interview Topics

In this post, you will learn about some of the questions (and answers) which could be asked in the DevOps Architect interview. The following are some of the topics you might want to cover for doing interview preparation for DevOps Architect position: DevOps & DevSecOps concepts Setting up DevOps implementation DevOps reference architecture DevOps reference implementation Continuous delivery concepts & reference architecture Technologies (Tools s& Frameworks) Here is a related diagram on topics which are useful for DevOps architect interview preparation. DevOps Architect Interview Q&A The following are some of the interview questions and answers for DevOps Architect: What is DevOps or DevSecOps? Ans: DevOps or DevSecOps can be defined …

Continue reading

Posted in Architecture, Career Planning, DevOps, Interview questions. Tagged with , .

Top 5+ Microservices Architecture & Design Best Practices

microservices-styled architecture

The Microservices-based application architecture represents a collection of small, autonomous and self-contained services which are built to serve a single business functionality/capability. The following represents a sample microservices-styled application landscape representing a set of microservices. Pay attention to different micro-services accessed through API gateway. In this post, you will learn about some of the best practices related to microservices-styled architecture (MSA) which can be adopted when creating the microservices-based application. The following are some of the best practices related to microservices which you may consider following while doing application implementation based on Microservices-styled architecture: Model Services based on Domain-driven Design (DDD): Services should be modeled around the business domain. Check …

Continue reading

Posted in Architecture, Microservices. Tagged with .

Blockchain Architect – A Sample Job Description

blockchain architect job description

Blockchain application development is going mainstream, and hence, would be requiring professionals with different roles and responsibilities including Blockchain architect, Blockchain developer etc. You may want to check out different Blockchain job designations on this page. The following is a list of points which can be made part of job description for Blockchain architect and related designations such as Blockchain platform architect, Blockchain solution architect, Blockchain lead architect etc. Demonstrate good understanding of Blockchain fundamentals, smart contracts, consensus algorithms Good understanding of different types of Blockchain such as public, private/permissioned, public permissioned etc. Good understanding of Blockchain framework such as Hyperledger Fabric, R3 Corda, Ethereum (Solidity) Good understanding of various …

Continue reading

Posted in Architecture, BlockChain, Career Planning, jobs, Reskilling. Tagged with , , .

Blockchain Architect – Top 20 Project Implementation Considerations

blockchain architect project implementation

When everyone is considering implementation different projects using Blockchain (distributed ledger) technology, it becomes key for Blockchain architects and leaders to pay attention to some of the key considerations including challenges related with blockchain projects implementation. On the lighter note, the comic strip below is a representation of the need for Blockchain architects required to get into several details including different architecture considerations before starting on a blockchain projects. In this post, you will learn about key considerations to be made by Blockchain architects and leads before starting on the Blockchain projects. Blockchain Project Implementation – Key Considerations Learning from similar project implementations: Analysis of blockchain-related implementations in similar and/or …

Continue reading

Posted in Architecture, BlockChain, Enterprise Architecture, News. Tagged with , .

AWS Architects – Best Practices to build Efficient Systems

aws cloud architect best practices guidelines

Here is a great resource (best practices and guidelines) which would help cloud architects (especially, AWS Solution architects) build the most secure, high-performing, resilient, and efficient infrastructure possible for their applications. That said, these cloud architecture whitepapers (pdf) would also prove helpful and useful for all kinds of cloud architects including Azure, Google Cloud, IBM, Oracle cloud etc. The following lists down the links for pages in related areas of interest: Operational excellence: Includes topics such as managing and automating changes, responding to events, and defining standards to successfully manage daily operations. Security: Includes aspects such as confidentiality and integrity of data, access-control, data audit etc Reliability: Includes topics such as recovery …

Continue reading

Posted in Architecture, AWS, Tutorials. Tagged with , , .

Architects – How to Calculate Service Availability Time?

calculate service availability time

This page lists down different aspects which can be considered by solution architects / technical architects / application architects on how to calculate service availability time. Given that microservices architecture style / cloud-native is adopted in modern age applications development, it would be good to know this piece of information. Service availability is commonly defined as the percentage of time that an application is operating normally. The following are different techniques which can be used to calculate service availability: Availability as function of MTBF and MTTR Availability with hard dependencies Availability with redundant components / services Service Availability as a function of MTBF and MTTR Service availability can be calculated based …

Continue reading

Posted in Architecture, Tutorials. Tagged with , .

Top 8 Areas to Consider for Application Architecture Review

This article represents top 8 areas to consider when you are going to review an application architecture. Please feel free to comment/suggest if I missed to mention one or more important points. Also, sorry for the typos. Hardware and Operating System: Following areas need to be reviewed: Hardware and operating system choices Financial analysis Processes for evaluating hardware and operating system System capabilities involved in high-frequency, high volume data transfers Software Services and Middleware: Following areas need to be covered: Coding standards Data structures Architecture layers Design patterns (stateful vs stateless) Design for change Communication protocols Code review processes Unit testing Applications Infrastructure: In case, the applications are infrastructure applications, …

Continue reading

Posted in Application Assessment, Architecture, Enterprise Architecture, Software Engg.

One Datastore per MicroService?

This article represents details on whether to use single datastore per microservice. Please feel free to comment/suggest if I missed to mention one or more important points. Also, sorry for the typos. From what I researched, the preferred architecture for microservices is polyglot persistence pattern. (http://martinfowler.com/bliki/PolyglotPersistence.html ). You could further read about this on following pages: http://martinfowler.com/articles/microservices.html#DecentralizedDataManagement http://microservices.io/patterns/data/database-per-service.html As per the best practices, each micro-service should have one database private to it. There are different ways to achieve the above objective. Some of them are listed below: Same database system for different services. In this following could be done: Different set of tables specific to microservice in the same database …

Continue reading

Posted in API Development, SOA. Tagged with .

API Tips – How to Write API Documentation

This article represents tips on how to write documentation for APIs which are going to be published to developers, both internal and external. It touches upon some of the important areas/points that needed to be included in API documentation such that developers find it easy enough to work with APIs. Please feel free to comment/suggest if I missed to mention one or more important points. Also, sorry for the typos. 3 Areas to Cover while doing API Documentation Landing page which provides details such as high level information of APIs, links to APIs pages, release information, changelog details A summary page providing an overview on APIs in general, list of API …

Continue reading

Posted in API Development, Enterprise Architecture. Tagged with .

Architecture – Top 10 Traits of a Software Architect

software architect

This article represents my opinion on top 10 traits of a software architect. Recently, I came across a need of my fellow colleague who asked me to take a shot at defining, what would it take for someone to become an architect. The below could be applied to architect in any technologies. Note that the below does not take into account few traits of an enterprise architect. However, I purposely did not include it. Please feel free to comment/suggest if I missed to mention one or more important points. Also, sorry for the typos.   Following are the top 10 traits described below: Knowledge of relevant technologies Should demonstrate strong …

Continue reading

Posted in Architecture, Enterprise Architecture. Tagged with .

How to Become a Technical Architect or an IT Architect?

The article presents a perspective on what is required to be done to become a Software Architect given you are currently playing the role of a software developer or a senior software developer. I have put up this blog as an answer to a related question put up by one of the vitalflux.com esteemed reader. Well, there is no right or wrong answer to this question. There can only be different perspectives. In case you have different views, please feel free to comment. Before I go on to present my perspective, check out some of the following links to understand what is Software Architecture? http://en.wikipedia.org/wiki/Software_architecture http://www.sei.cmu.edu/architecture/ http://www.ibm.com/developerworks/rational/library/feb06/eeles/   Different Designations …

Continue reading

Posted in Architecture. Tagged with .

Lessons from Evernote Usage of Apache Thrift Framework

This article throws light on underlying technology used by Evernote to meet the primary requirement of having client applications on different OS platforms connect to server application for accessing/updating the notes.   What is Evernote?   As per Wikipedia…Evernote is a suite of software and services designed for notetaking and archiving. A “note” can be a piece of formatted text, a full webpage or webpage excerpt, a photograph, a voice memo, or a handwritten “ink” note…. Evernote supports a number of operating system platforms (including OS X, iOS, Chrome OS, Android, Microsoft Windows, Windows Phone, BlackBerry, and webOS) and also offers online synchronisation and backup services. The diagram below illustrates …

Continue reading

Posted in Integration, SOA. Tagged with , , .

LinkedIn Application Architecture – Software Distribution View

The article lists down the softwares used at different layers in the LinkedIn platform layered architecture. Presentation Layer Dust.js (Client-side templating JS engine) Backbone.js (Client-side MVC JS framework) JQuery  YUI Library (UI libraries started by Yahoo engineers) Google V8 Engine (Used as server side JS templating engine) Node.js (Used in mobile app) HTML5 (Used in mobile app) Business Layer Java (Applications such as Profile) Grails (Applications such as a Recruiter app) JRuby (Applications such as a Skills app) Spring (Component Model) Scala Middleware Apache Kafka (Distributed entreprise-level messaging system) Data Layer Oracle (RDBMS as primary data store used for writes) Espresso (NoSQL data store emerging as primary data store and envisioned to …

Continue reading

Posted in Architecture. Tagged with , .

Data Architecture Lessons from LinkedIn.com Data Handling Mechanisms

The article aims to describe how data is managed at LinkedIn.com, the most popular professional social networking site.  Please shout out loud if you disagree with one or more of the aspects mentioned below. Also, do suggest if I missed on one or more aspects. Data use-cases at LinkedIn.com Following are some of the data use-cases that we may have come across while we are surfing various different LinkedIn pages: Update your profile, and the same appears in recruiter search in near real-time. Update your profile and same appears as network connections  in near real-time. Share an update, and same appears on others news feed page  in near real-time. Then, there are …

Continue reading

Posted in Architecture, Performance Engineering. Tagged with , , .