One of the biggest
“Millions of buyers and sellers”
“Tens of millions of product listings”
Translates to hundreds of services deployed across multiple data centers.
in Business &
● Identify business needs & help
translate them into detailed technical
requirements and specifications.
● Participate in prioritization:
○ Product features
○ Technical debt
● Negotiate with Products & Business
to ensure proper prioritization of
important Technical debt
or more than one
● A product will have functional and
● Architect owns the nonfunctional
requirements like latency,
availability, scalability and
● S/he participates in decision on the
technical stack and the design and
architecture to solve the problem.
Helps the team
● Goal is to design a scalable,
maintainable and extensible
● Focus should be more on “what” to
do rather than “how” to do.
● High level design options. Evaluate.
● Discuss pros and cons with the team
and decide the approach.
● Mentors and guides the engineering
team on best practices, design
patterns, upcoming technologies etc.
● Participates in dissemination of
information using knowledge sharing
sessions and motivates the team to
● Engage in technical discussions on
alternate ways of implementations,
pros and cons of each etc. (which is
the essence of architecture).
Acts as the guard
● Code is written for Humans to read
and machines to execute.
● Conducts, and motivates the team to
have regular code reviews (peer,
over the shoulder or github PR).
● Enforce good practices in software
engineering like proper unit tests,
code coverage and using design
● Research and evaluate common
off-the-shelf products to see whether
they will be more suitable than
building a new system.
● Build vs buy dilemma!
● Leverage 3rd party open source and
other technologies outside of the
core solution and estimate cost of
● Architects are also responsible to
help teams debug harder issues and
in the process make team learn
about different debugging tools and
● Troubleshoot and perform Root
cause analysis of production issues.
Learns and teaches
● As an Architect you will need to
involve in myriads of communication
with different stakeholders.
● Effective and tailored communication
to different audiences.
● Implement whitepapers as needed
on design & redesign efforts.
● Implement effective interview
process in the company.
● Assist in developing assessment
tests and evaluating the same.
● Helps in assisting on hiring and most
cases is an authority on yes/no
For present & future
“Architects look at thousands of
buildings during the training, and study
critiques of those buildings written by
masters. In contrast, most software
developers only ever get to know a
handful of large programs well - usually
programs they wrote themselves - and
never study the great programs of
● Resolve to continuous learning. Learn
from other people (discussions), books
● Read code written by other people.
● As an architect, spend some time on new
interesting stuff happening in technology.
(subscribe to hackernews).
● Read about design decisions. Best
places are own workplace (with
colleagues), mailing lists, github issues,
and books of-course.
Learn, learn, learn!
Read about how other technical
architects and computer scientists
across the world think.
Learn the techniques to explain
concepts in a simple manner.
● More you have to explain a concept to others - better you grasp it.
● So whether by writing a blog, trying to write some code to verify the
concepts learnt or to explain to someone (or many people) in person, try to
transfer the knowledge.
Coding / Debugging
● Every technical architect who leads software development team must code
and should be the role model with respect to all standard practices that he
wants team to follow:
○ Write good quality code with proper documentation (technical
architecture document), comments in the code and unit testing in place.
○ Technical architecture document should include high level interactions
between the system and the external entities (databases, caches,
message queues etc.)
● It also applies to debugging and sharing of knowledge.
The world today is so connected you can
reach me on many channels:
Mail: awasthi /dot/ manoj /at/ gmail /dot/ com
FYI: Tokopedia is hiring across and also
for Technical Architects and
Please connect with me on mail or to