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
Functional Design for Reference Architectures
Search
Jeferson David Ossa
March 19, 2018
Technology
2
250
Functional Design for Reference Architectures
https://nescala.io/2018/#schedule
https://scala.io/2018/talks.html#/#TOX-4454
Jeferson David Ossa
March 19, 2018
Tweet
Share
More Decks by Jeferson David Ossa
See All by Jeferson David Ossa
implicit def bias = stereotypes |+| prejudices
jedossa
0
760
Exploring the Scala's Tooling Ecosystem
jedossa
0
790
Consistency without Clocks: The FaunaDB Distributed Transaction Protocol
jedossa
0
240
akka-cluster-k8s
jedossa
0
480
Other Decks in Technology
See All in Technology
今から間に合う re:Invent 準備グッズと現地の地図、その他ラスベガスを周る際の Tips/reinvent-preparation-guide
emiki
1
280
日本のソブリンAIを支えるエヌビディアの生成AIエコシステム
acceleratedmu3n
0
130
OPENLOGI Company Profile for engineer
hr01
1
46k
Boxを“使われる場”にする統制と自動化の仕組み
demaecan
0
200
AIを使ってテストを楽にする
kworkdev
PRO
0
420
DSPy入門
tomehirata
6
900
Copilotの精度を上げる!カスタムプロンプト入門.pdf
ismk
2
300
abema-trace-sampling-observability-cost-optimization
tetsuya28
0
480
今のコンピュータ、AI にも Web にも 向いていないので 作り直そう!!
piacerex
0
630
CLIPでマルチモーダル画像検索 →とても良い
wm3
2
800
Giving Tuesday Auctria Set-Up 2025
auctria
PRO
0
100
パフォーマンスチューニングのために普段からできること/Performance Tuning: Daily Practices
fujiwara3
2
200
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Music & Morning Musume
bryan
46
6.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
44
8k
Into the Great Unknown - MozCon
thekraken
40
2.1k
Statistics for Hackers
jakevdp
799
220k
Designing Experiences People Love
moore
142
24k
Embracing the Ebb and Flow
colly
88
4.9k
We Have a Design System, Now What?
morganepeng
54
7.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.3k
Balancing Empowerment & Direction
lara
5
710
Transcript
Functional Design for Reference Architecture An experience report
About me Jeferson David Ossa @unyagami on twitter FP Professor
Developer at Seven4n
Context • Engineers with Java background (mostly) • Monolithic architecture
• Emerging market • Increasing business complexity • Need for speed • New needs, new approaches
Rediscovering FP • Reducing complexity ◦ Data in => Data
out ◦ Parameterize all things ◦ Type-safe ◦ Immutability • Growing complexity ◦ Apomorphisms ◦ Dynamorphisms ◦ Chronomorphisms ◦ Zygohistomorphic prepromorphisms
Object-Oriented Meets Functional FP Functions Functions Functions Functions Functions in
the small, objects in the large OO Single responsibility Open/Close Dependency inversion Factory pattern etc.
Challenges • Continue delivering business value • Onboarding new team
members • Lack of experts on FP • Stop doing “better Java” • Knowledge management
Our approach • Fine-grained control of decisions • Code/Tests as
documentation • An easy to evolve artifact • Everyone in the team can contribute • A framework was not enough
Reference architecture “A reference architecture is a set of documents
to which an interested party can refer to for best practices, common standards, specifications and patterns” - DDD - Microservices - CQRS - ADT - DSL/Tagless - Onion/Clean/Hexagonal architecture
Service View µ-service Ports/Adapters Domain Services Infrastructure ACL
Let's check out some code warning: boilerplate code ahead
Final thoughts • It is complex to get simple •
Abstractions have complexity costs • Keep studying • Focus on people • Measures of success
Thank you for listening! s4n.co