Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
It is but not an "architecture" talk
Search
Ragunath Jawahar
December 01, 2018
Programming
290
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
It is but not an "architecture" talk
#105 December Meetup - BlrDroid + BlrKotlin
https://www.meetup.com/blrdroid/events/256468726/
Ragunath Jawahar
December 01, 2018
More Decks by Ragunath Jawahar
See All by Ragunath Jawahar
Context Management for Everyday Software Engineering
ragunathjawahar
1
71
The Hidden Cognitive Costs of AI-assisted Programming @ GIDS 2026
ragunathjawahar
1
120
AI-Native Codebases
ragunathjawahar
1
100
AI-Native Codebases x BLR Kotlin
ragunathjawahar
1
51
Single-responsibility principle meets the real world! (Dubai Edition)
ragunathjawahar
0
99
Single-responsibility principle meets the real world!
ragunathjawahar
0
210
Making sense of large Java and Kotlin classes
ragunathjawahar
1
340
Building Robust Software, Episode 3
ragunathjawahar
1
220
Building Robust Software, Episode 2
ragunathjawahar
1
180
Other Decks in Programming
See All in Programming
freee が目指す データ マネジメント戦略 AI-Ready 時代を支える 攻めのガバナンスとは
freee
PRO
0
420
AI Readyの正体はデータマネジメントだ メダリオン2.0の最前線
freee
PRO
0
300
Google Apps Script で Ruby を動かす
kawahara
0
270
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
600
Cloudflare is Agents
chimame
0
170
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
630
yield再入門 #phpcon
o0h
PRO
0
1.1k
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
480
React本体のコードリーディング
high_g_engineer
1
150
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
220
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
1.8k
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.7k
Featured
See All Featured
The Mindset for Success: Future Career Progression
greggifford
PRO
0
450
Fireside Chat
paigeccino
42
4k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
30 Presentation Tips
portentint
PRO
1
370
Product Roadmaps are Hard
iamctodd
55
12k
Abbi's Birthday
coloredviolet
3
9.4k
Unsuck your backbone
ammeep
672
58k
How to make the Groovebox
asonas
2
2.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
290
Paper Plane (Part 1)
katiecoart
PRO
1
10k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
Transcript
IT IS BUT NOT AN “ARCHITECTURE” TALK @RagunathJawahar | Uncommon
TEAM SIZE • Lone wolf / she-wolf • 2 /
3 member team • 4 / 5 member team • 5 - 10 member team • Greater than 10
EMOTIONS • Joy • Indifference • Annoyance • Frustration CODE
BASE &
TWO INFAMOUS STATEMENTS (EXCUSES) 1. We don’t need an architecture.
*Not drawn to scale Objects in front of you are
closer than they appear Time Features Prototyping A/B Tests No architecture With architecture
TWO INFAMOUS STATEMENTS (EXCUSES) 1. We don’t need an architecture.
2. They don’t give us enough time for architecture.
WHAT’S REQUIRED Important Unimportant Urgent Not Urgent Structure Behavior Structure
Behavior
WHAT ENDS UP HAPPENING… Important Unimportant Urgent Not Urgent
WHAT ENDS UP HAPPENING… Important Unimportant Urgent Not Urgent Structure
Behavior Behavior
Structure Behavior
Structure Behavior
Structure Behavior
Structure Behavior
“ The goal of software architecture is to minimise the
human resources required to build and maintain the required system. -Robert C. Martin
NO TIME FOR ARCHITECTURE? @rensvandenbergh
SETTLING ON AN ARCHITECTURE
None
FACTORS • Platform • Paradigm • Language • Tools &
dev practices INFLUENTIAL
FACTORS INFLUENTIAL • Platform • Paradigm • Language • Tools
& dev practices
IMPERATIVE FUNCTIONAL • MVC • MVP • MVVM • VIPER
• MVI (One Way) • Redux *Not an exhaustive list
IMPERATIVE FUNCTIONAL • Easy to learn • Mutability • Performance
• Learning curve • Immutability • Predictability • Asynchrony *Not an exhaustive list
DESIGN THINKING Explore Understand Evaluate Make
MAKING & EVALUATING (ANDROID) ARCHITECTURES • Hello stranger • Counter
• Login • BMI Calculator • Image chooser • Quiz with timer • Magnetometer
QUALITY ATTRIBUTES
UBER
SOME COMMON QUALITY ATTRIBUTES • Testability • Adoptability • Adaptability
• Availability • Reliability • Performance • Scalability *Not an exhaustive list • Security • Manageability • Buildability • Reusability • Maintainability • Simplicity • Efficiency
WORKFLOW
VISUALIZE
VISUALIZE
ESCAPE • Boilerplate • Slow down (feels like) VELOCITY
QUESTIONS? @ragunathjawahar / GitHub / Twitter / Medium