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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
790
Exploring the Scala's Tooling Ecosystem
jedossa
0
800
Consistency without Clocks: The FaunaDB Distributed Transaction Protocol
jedossa
0
260
akka-cluster-k8s
jedossa
0
490
Other Decks in Technology
See All in Technology
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
620
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
230
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
530
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.8k
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
150
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
Context Engineeringの取り組み
nutslove
0
320
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
140
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.3k
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
140
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
5
3k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
66k
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
The Curious Case for Waylosing
cassininazir
0
230
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
Test your architecture with Archunit
thirion
1
2.1k
The Cost Of JavaScript in 2023
addyosmani
55
9.5k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
72
Accessibility Awareness
sabderemane
0
51
Automating Front-end Workflow
addyosmani
1371
200k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
110
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
0
1.9k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
430
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