SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Downloaden Sie, um offline zu lesen
The Role of an IT
Architect in Startups
Manoj Awasthi
Who is this?
● Graduated in 2004
● Worked in some big and
small systems companies
● Worked with Adobe for
more than 9 years
● Came to Indonesia year and
half back joining Tokopedia
Agenda
➔ Tokopedia
Technical stack at Tokopedia. Problems
we are solving.
➔ Role of a Technical Architect
Many facets of an Architect.
➔ Advice for present / future
architects
fwiw, Some advice.
What is Tokopedia?
One of the biggest
C2C marketplaces
in Indonesia
“Millions of buyers and sellers”
Seller Platform
Discovery
Digital Products
Advertising
Logistics
Promotions
Customer Support
“Tens of millions of product listings”
Translates to hundreds of services deployed across multiple data centers.
Technical Stack at
Tokopedia
Technical
Stack at
Tokopedia
Role of a Technical Architect
(at Tokopedia)
Collaborates
with
stakeholders
in Business &
Products
● Identify business needs & help
translate them into detailed technical
requirements and specifications.
● Participate in prioritization:
○ Product features
○ Bugs
○ Technical debt
● Negotiate with Products & Business
to ensure proper prioritization of
important Technical debt
component.
Owns one
or more than one
products
● A product will have functional and
nonfunctional requirements.
● Architect owns the nonfunctional
requirements like latency,
availability, scalability and
maintainability.
● S/he participates in decision on the
technical stack and the design and
architecture to solve the problem.
Helps the team
design things
● Goal is to design a scalable,
maintainable and extensible
software system.
● 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.
Mentor to
the team!
● 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
participate.
● 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
of engineering
principles
● 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
patterns.
Researches “COTS”
components
● 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
the same.
Debugging
● Architects are also responsible to
help teams debug harder issues and
in the process make team learn
about different debugging tools and
approaches.
● Troubleshoot and perform Root
cause analysis of production issues.
Learns and teaches
effective
communication
● 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.
Hiring
● 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
decisions.
Advice!
For present & future
technical Architects!
Be a continuous learner.
“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
history!”
Source: http://www.aosabook.org/en/
● Resolve to continuous learning. Learn
from other people (discussions), books
and articles.
● 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.
Be a mentor.
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.
Best policy is to Lead by
example.
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.
Thank you!
The world today is so connected you can
reach me on many channels:
Twitter: @awmanoj
Linkedin: /in/manojawasthi/
Mail: awasthi /dot/ manoj /at/ gmail /dot/ com
FYI: Tokopedia is hiring across and also
for Technical Architects and
Engineering Managers!
/careers/Technology/technical-architect
/careers/Technology/engineering-manager
Please connect with me on mail or to
hrd@tokopedia.com.
https://awmanoj.github.io
/
Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

Taming Big Balls of Mud with Diligence, Agile Practices, and Hard Work
Taming Big Balls of Mud with Diligence, Agile Practices, and Hard WorkTaming Big Balls of Mud with Diligence, Agile Practices, and Hard Work
Taming Big Balls of Mud with Diligence, Agile Practices, and Hard Work
Joseph Yoder
 
Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)
stanbridge
 

Was ist angesagt? (20)

Software architect - roles & responsabilities
Software architect - roles & responsabilitiesSoftware architect - roles & responsabilities
Software architect - roles & responsabilities
 
Career Path Planning
Career Path PlanningCareer Path Planning
Career Path Planning
 
Are You an Accidental or Intention Software Architect
Are You an Accidental or Intention Software ArchitectAre You an Accidental or Intention Software Architect
Are You an Accidental or Intention Software Architect
 
To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...To document or not to document? An exploratory study on developers' motivatio...
To document or not to document? An exploratory study on developers' motivatio...
 
Taming Big Balls of Mud with Diligence, Agile Practices, and Hard Work
Taming Big Balls of Mud with Diligence, Agile Practices, and Hard WorkTaming Big Balls of Mud with Diligence, Agile Practices, and Hard Work
Taming Big Balls of Mud with Diligence, Agile Practices, and Hard Work
 
Clean architecture
Clean architectureClean architecture
Clean architecture
 
CNS Presentation
CNS PresentationCNS Presentation
CNS Presentation
 
Reducing Technical Debt
Reducing Technical DebtReducing Technical Debt
Reducing Technical Debt
 
career opportunities available for ICT student
career opportunities available for ICT studentcareer opportunities available for ICT student
career opportunities available for ICT student
 
Emertxe : Linux training portfolio
Emertxe : Linux training portfolioEmertxe : Linux training portfolio
Emertxe : Linux training portfolio
 
Analysis of software architectures
Analysis of software architecturesAnalysis of software architectures
Analysis of software architectures
 
Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)Cs 1023 lec 3 architecture (week 1)
Cs 1023 lec 3 architecture (week 1)
 
Tdd 4 everyone full version
Tdd 4 everyone full versionTdd 4 everyone full version
Tdd 4 everyone full version
 
The Role of the Software Architect
The Role of the Software ArchitectThe Role of the Software Architect
The Role of the Software Architect
 
Unit 1 introduction to software
Unit 1 introduction to softwareUnit 1 introduction to software
Unit 1 introduction to software
 
VI-241: Innovation with Deltek Vision
VI-241: Innovation with Deltek VisionVI-241: Innovation with Deltek Vision
VI-241: Innovation with Deltek Vision
 
Project flow mishra
Project flow mishraProject flow mishra
Project flow mishra
 
Codurance Courses: Crafted Design
Codurance Courses: Crafted DesignCodurance Courses: Crafted Design
Codurance Courses: Crafted Design
 
Client /Manger round FAQ
Client /Manger  round FAQClient /Manger  round FAQ
Client /Manger round FAQ
 
Zookeeper's guide to architecture frameworks
Zookeeper's guide to architecture frameworksZookeeper's guide to architecture frameworks
Zookeeper's guide to architecture frameworks
 

Andere mochten auch

AIESEC in Indonesia - Local Chapter UNAND (Universitas Andalas)
AIESEC in Indonesia - Local Chapter UNAND (Universitas Andalas)AIESEC in Indonesia - Local Chapter UNAND (Universitas Andalas)
AIESEC in Indonesia - Local Chapter UNAND (Universitas Andalas)
Fitrisia Pertiwi
 

Andere mochten auch (20)

[AIESEC UNAND 1415] Summer Market Research Analysis in UNAND
[AIESEC UNAND 1415] Summer Market Research Analysis in UNAND[AIESEC UNAND 1415] Summer Market Research Analysis in UNAND
[AIESEC UNAND 1415] Summer Market Research Analysis in UNAND
 
AIESEC in Indonesia - Local Chapter UNAND (Universitas Andalas)
AIESEC in Indonesia - Local Chapter UNAND (Universitas Andalas)AIESEC in Indonesia - Local Chapter UNAND (Universitas Andalas)
AIESEC in Indonesia - Local Chapter UNAND (Universitas Andalas)
 
Reliability at scale
Reliability at scale Reliability at scale
Reliability at scale
 
The role of an IT architect in startups
The role of an IT architect in startupsThe role of an IT architect in startups
The role of an IT architect in startups
 
Stop sending PDFs, transform them into tracking landing pages instead
Stop sending PDFs, transform them into tracking landing pages insteadStop sending PDFs, transform them into tracking landing pages instead
Stop sending PDFs, transform them into tracking landing pages instead
 
Sharing Economy
Sharing EconomySharing Economy
Sharing Economy
 
Kym - GoJek GoPay integration
Kym - GoJek GoPay integration Kym - GoJek GoPay integration
Kym - GoJek GoPay integration
 
SCRUM - The Art of Doing Twice The Work in Half The Time from Jeff Sutherland
SCRUM - The Art of Doing Twice The Work in Half The Time from Jeff SutherlandSCRUM - The Art of Doing Twice The Work in Half The Time from Jeff Sutherland
SCRUM - The Art of Doing Twice The Work in Half The Time from Jeff Sutherland
 
Gojek Happiness Story
Gojek Happiness StoryGojek Happiness Story
Gojek Happiness Story
 
Scaling tokopedia-past-present-future
Scaling tokopedia-past-present-futureScaling tokopedia-past-present-future
Scaling tokopedia-past-present-future
 
Tokopedia - How Tokopedia Became one of Indonesia’s Most Promising Startups
Tokopedia - How Tokopedia Became one of Indonesia’s Most Promising StartupsTokopedia - How Tokopedia Became one of Indonesia’s Most Promising Startups
Tokopedia - How Tokopedia Became one of Indonesia’s Most Promising Startups
 
How To Pitch An Angel
How To Pitch An AngelHow To Pitch An Angel
How To Pitch An Angel
 
The Role Of An Architect
The Role Of An ArchitectThe Role Of An Architect
The Role Of An Architect
 
The Ultimate Investor Pitch Deck Template
The Ultimate Investor Pitch Deck TemplateThe Ultimate Investor Pitch Deck Template
The Ultimate Investor Pitch Deck Template
 
Idea generation & development for startups
Idea generation & development for startupsIdea generation & development for startups
Idea generation & development for startups
 
Pitch Deck Template for startups
Pitch Deck Template for startupsPitch Deck Template for startups
Pitch Deck Template for startups
 
Airbnb Pitch Deck From 2008
Airbnb Pitch Deck From 2008Airbnb Pitch Deck From 2008
Airbnb Pitch Deck From 2008
 
Mint.com Pre-Launch Pitch Deck
Mint.com Pre-Launch Pitch DeckMint.com Pre-Launch Pitch Deck
Mint.com Pre-Launch Pitch Deck
 
Foursquare's 1st Pitch Deck
Foursquare's 1st Pitch DeckFoursquare's 1st Pitch Deck
Foursquare's 1st Pitch Deck
 
SEOmoz Pitch Deck July 2011
SEOmoz Pitch Deck July 2011SEOmoz Pitch Deck July 2011
SEOmoz Pitch Deck July 2011
 

Ähnlich wie The Role of IT Architect in Startup Company

Ähnlich wie The Role of IT Architect in Startup Company (20)

I want to be an IT Architect
I want to be an IT ArchitectI want to be an IT Architect
I want to be an IT Architect
 
The Software Development Industry
The Software Development IndustryThe Software Development Industry
The Software Development Industry
 
Copywriting for UX
Copywriting for UXCopywriting for UX
Copywriting for UX
 
Keeping up with Tech
Keeping up with Tech Keeping up with Tech
Keeping up with Tech
 
The role of the architect in agile
The role of the architect in agileThe role of the architect in agile
The role of the architect in agile
 
The Role of the Architect
The Role of the ArchitectThe Role of the Architect
The Role of the Architect
 
Tackle Your Everyday Business Problems Like an Architect, Melissa Shepard
Tackle Your Everyday Business Problems Like an Architect, Melissa ShepardTackle Your Everyday Business Problems Like an Architect, Melissa Shepard
Tackle Your Everyday Business Problems Like an Architect, Melissa Shepard
 
Kickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdfKickstarting career as an Android developer.pdf
Kickstarting career as an Android developer.pdf
 
Large drupal site builds a workshop for sxsw interactive - march 17, 2015
Large drupal site builds   a workshop for sxsw interactive - march 17, 2015Large drupal site builds   a workshop for sxsw interactive - march 17, 2015
Large drupal site builds a workshop for sxsw interactive - march 17, 2015
 
Tech-Writing-101
Tech-Writing-101Tech-Writing-101
Tech-Writing-101
 
How to become a great developer
How to become a great developerHow to become a great developer
How to become a great developer
 
Software Engineering Primer
Software Engineering PrimerSoftware Engineering Primer
Software Engineering Primer
 
Webinar: From Engineer to Product Manager by fmr Uber PM
Webinar: From Engineer to Product Manager by fmr Uber PMWebinar: From Engineer to Product Manager by fmr Uber PM
Webinar: From Engineer to Product Manager by fmr Uber PM
 
User Centered Design: guarantee that your business process automation project...
User Centered Design: guarantee that your business process automation project...User Centered Design: guarantee that your business process automation project...
User Centered Design: guarantee that your business process automation project...
 
Guide To Hiring Dedicated Python Developers In India.pdf
Guide To Hiring Dedicated Python Developers In India.pdfGuide To Hiring Dedicated Python Developers In India.pdf
Guide To Hiring Dedicated Python Developers In India.pdf
 
Bridging the gap: Successful collaboration between engineering & design
Bridging the gap: Successful collaboration between engineering & designBridging the gap: Successful collaboration between engineering & design
Bridging the gap: Successful collaboration between engineering & design
 
Project Based Training Programme
Project Based Training Programme Project Based Training Programme
Project Based Training Programme
 
Standing out as a new grad candidate
Standing out as a new grad candidateStanding out as a new grad candidate
Standing out as a new grad candidate
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
UI/UX Design in Agile process
UI/UX Design in Agile process  UI/UX Design in Agile process
UI/UX Design in Agile process
 

Mehr von SARCCOM

Mehr von SARCCOM (20)

Week 3 Deep Learning And POS Tagging Hands-On
Week 3 Deep Learning And POS Tagging Hands-OnWeek 3 Deep Learning And POS Tagging Hands-On
Week 3 Deep Learning And POS Tagging Hands-On
 
Week 2 Sentiment Analysis Using Machine Learning
Week 2 Sentiment Analysis Using Machine Learning Week 2 Sentiment Analysis Using Machine Learning
Week 2 Sentiment Analysis Using Machine Learning
 
Week 1 Natural Language Processing Introduction
Week 1  Natural Language Processing IntroductionWeek 1  Natural Language Processing Introduction
Week 1 Natural Language Processing Introduction
 
The Secret of Most Wanted Geek
The Secret of Most Wanted GeekThe Secret of Most Wanted Geek
The Secret of Most Wanted Geek
 
Fundamental of Machine Learning
Fundamental of Machine LearningFundamental of Machine Learning
Fundamental of Machine Learning
 
Data Warehousing Tools on Data Ecosystem
Data Warehousing Tools on Data EcosystemData Warehousing Tools on Data Ecosystem
Data Warehousing Tools on Data Ecosystem
 
Startup Engineering Culture
Startup Engineering CultureStartup Engineering Culture
Startup Engineering Culture
 
Menggapai Paripurna Rekayasa
Menggapai Paripurna RekayasaMenggapai Paripurna Rekayasa
Menggapai Paripurna Rekayasa
 
Requirement Gathering Jump Start
Requirement Gathering Jump StartRequirement Gathering Jump Start
Requirement Gathering Jump Start
 
Legacy code - Taming The Beast
Legacy code  - Taming The BeastLegacy code  - Taming The Beast
Legacy code - Taming The Beast
 
The Role of IT Architect in Enterprise Company (Garuda Indonesia)
The Role of IT Architect in Enterprise Company (Garuda Indonesia)The Role of IT Architect in Enterprise Company (Garuda Indonesia)
The Role of IT Architect in Enterprise Company (Garuda Indonesia)
 
Blibli Web Application Security Policy Enforcement Point
Blibli Web Application Security Policy Enforcement Point Blibli Web Application Security Policy Enforcement Point
Blibli Web Application Security Policy Enforcement Point
 
Implement OpenSAMM on blibli.com
Implement OpenSAMM on blibli.comImplement OpenSAMM on blibli.com
Implement OpenSAMM on blibli.com
 
Architecting for Huper Growth and Great Engineering Culture
Architecting for Huper Growth and Great Engineering CultureArchitecting for Huper Growth and Great Engineering Culture
Architecting for Huper Growth and Great Engineering Culture
 
Software Architecture Introduction
Software Architecture IntroductionSoftware Architecture Introduction
Software Architecture Introduction
 
Telco Business & Technology
Telco Business & TechnologyTelco Business & Technology
Telco Business & Technology
 
Best Practice In Software Development
Best Practice In Software DevelopmentBest Practice In Software Development
Best Practice In Software Development
 
The Evolution of Software for a Startup
The Evolution of Software for a Startup The Evolution of Software for a Startup
The Evolution of Software for a Startup
 
How to work with us? We are Gen Y!
How to work with us? We are Gen Y!How to work with us? We are Gen Y!
How to work with us? We are Gen Y!
 
Managing Security in Agile Culture
Managing Security in Agile CultureManaging Security in Agile Culture
Managing Security in Agile Culture
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Kürzlich hochgeladen (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

The Role of IT Architect in Startup Company

  • 1. The Role of an IT Architect in Startups Manoj Awasthi
  • 2. Who is this? ● Graduated in 2004 ● Worked in some big and small systems companies ● Worked with Adobe for more than 9 years ● Came to Indonesia year and half back joining Tokopedia
  • 3. Agenda ➔ Tokopedia Technical stack at Tokopedia. Problems we are solving. ➔ Role of a Technical Architect Many facets of an Architect. ➔ Advice for present / future architects fwiw, Some advice.
  • 5. One of the biggest C2C marketplaces in Indonesia “Millions of buyers and sellers” Seller Platform Discovery Digital Products Advertising Logistics Promotions Customer Support “Tens of millions of product listings” Translates to hundreds of services deployed across multiple data centers.
  • 8. Role of a Technical Architect (at Tokopedia)
  • 9. Collaborates with stakeholders in Business & Products ● Identify business needs & help translate them into detailed technical requirements and specifications. ● Participate in prioritization: ○ Product features ○ Bugs ○ Technical debt ● Negotiate with Products & Business to ensure proper prioritization of important Technical debt component.
  • 10. Owns one or more than one products ● A product will have functional and nonfunctional requirements. ● Architect owns the nonfunctional requirements like latency, availability, scalability and maintainability. ● S/he participates in decision on the technical stack and the design and architecture to solve the problem.
  • 11. Helps the team design things ● Goal is to design a scalable, maintainable and extensible software system. ● 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.
  • 12. Mentor to the team! ● 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 participate. ● Engage in technical discussions on alternate ways of implementations, pros and cons of each etc. (which is the essence of architecture).
  • 13. Acts as the guard of engineering principles ● 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 patterns.
  • 14. Researches “COTS” components ● 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 the same.
  • 15. Debugging ● Architects are also responsible to help teams debug harder issues and in the process make team learn about different debugging tools and approaches. ● Troubleshoot and perform Root cause analysis of production issues.
  • 16. Learns and teaches effective communication ● 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.
  • 17. Hiring ● 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 decisions.
  • 18. Advice! For present & future technical Architects!
  • 19. Be a continuous learner.
  • 20. “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 history!” Source: http://www.aosabook.org/en/
  • 21. ● Resolve to continuous learning. Learn from other people (discussions), books and articles. ● 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!
  • 22. Read about how other technical architects and computer scientists across the world think.
  • 24. 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.
  • 25. Best policy is to Lead by example.
  • 26. 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.
  • 27. Thank you! The world today is so connected you can reach me on many channels: Twitter: @awmanoj Linkedin: /in/manojawasthi/ Mail: awasthi /dot/ manoj /at/ gmail /dot/ com FYI: Tokopedia is hiring across and also for Technical Architects and Engineering Managers! /careers/Technology/technical-architect /careers/Technology/engineering-manager Please connect with me on mail or to hrd@tokopedia.com. https://awmanoj.github.io / Questions?