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
Coding Night 2015
Search
Christian Bäuerlein
July 17, 2015
Technology
0
310
Coding Night 2015
Christian Bäuerlein
July 17, 2015
Tweet
Share
More Decks by Christian Bäuerlein
See All by Christian Bäuerlein
Single File Ruby Programs @ RubyUnconf 2023
fabrik42
0
120
Single File Ruby Programs 2.0
fabrik42
1
180
Single File Ruby Programs
fabrik42
0
170
Agile Software Development for Software Developers
fabrik42
0
38
Phoenix Live View
fabrik42
0
440
Rails API-only considerations
fabrik42
0
290
Org-Mode
fabrik42
0
410
Flocking Simulation with Phoenix Channels
fabrik42
1
300
Cleaner, scalable views with object oriented components
fabrik42
0
300
Other Decks in Technology
See All in Technology
ACRiルーム最新情報とAMD GPUサーバーのご紹介
anjn
0
150
Docker互換のセキュアなコンテナ実行環境「Podman」超入門
devops_vtj
6
3.2k
AWS IAMのアンチパターン/AWSが考える最低権限実現へのアプローチ概略(JAWS-UG朝会#59資料改修20分版)
htan
0
330
DevIO2024_レガシー運用からの脱却 -クラウド活用の実践事例とベストプラクティス-
jun2882
0
210
エンジニアリングマネージャーはどう学んでいくのか #devsumi / How Do Engineering Managers Continue to Learn and Grow?
expajp
4
1.3k
Luupの開発組織におけるインシデントマネジメントの変遷 ver.RoadtoSRENEXT2024
grimoh
1
270
データベース研修 DB基礎【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
210
「我々はどこに向かっているのか」を問い続けるための仕組みづくり / Establishing a System for Continuous Inquiry about where we are
daitasu
0
170
Classmethod Odyssey 登壇資料
yamahiro
0
390
ソフトウェアエンジニアリングの知見を活かして データ基盤をいい感じにする on Snowflake [MIERUNE BBQ #10]
mtpooh
2
150
ABEMAにおけるLLMを用いたコンテンツベース推薦システム導入と効果検証
cyberagentdevelopers
PRO
1
730
20240725 LLMによるDXのビジョンと、今何からやるべきか @Azure OpenAI Service Dev Day
nrryuya
3
1.2k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
784
250k
Side Projects
sachag
451
42k
How GitHub (no longer) Works
holman
305
140k
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
GraphQLとの向き合い方2022年版
quramy
36
13k
Agile that works and the tools we love
rasmusluckow
325
20k
Optimising Largest Contentful Paint
csswizardry
18
2.6k
Clear Off the Table
cherdarchuk
89
320k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
78
15k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
121
18k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.3k
Atom: Resistance is Futile
akmur
261
25k
Transcript
None
Hi! J Christian Bäuerlein • @fabrik42 • github.com/fabrik42
Creating mobility using existing resources
Creating mobility using existing resources Bringing together drivers and passengers
to share a ride.
0-5 km Urban 5 - 100 km Regional 100 -
700 km Intercity
None
None
None
Speed Dating the flinc Tech Stack
Backnet
Load Balancer Load Balancer Rev. Proxy Rev. Proxy App Server
App Server App Server App Server App Server ... Static Assets Caching DB Queue Ext. Service Worker Worker Worker Worker Worker ... Micro service Simplified version of our backnet server setup.
Servers in Germany (owned by German Company) All Servers running
in VMs Provisioning via Chef
Ruby on Rails
5 Years
> 330k Users
~100k LOC Ruby
20 API Clients RESTful JSON API oAuth 2 Provider Detailled
test suite
PostgreSQL
Extensions
Stored Procedures User Defined Functions
Exceeded 32 Bit Int in 2013
WE LOVE IT!
Background Processing Sending Emails Calculating Routes Processing User Uploads External
Services
Essential part of our architecture Don‘t let the user wait.
Don‘t let the user see errors from external services. Retry yourself in the background. Come back to the user later.
Microservices Sending Email, Push, SMS Accessing/processing 3rd party services Ruby/Go/C++/Java
Routing Server High Performance Tailored to the flinc use cases
Business Intelligence
Business Intelligence
Testing
~7500 Tests
~3 min for full suite
Rspec Jasmine Protractor
Deployment
Make your code accessible
Communicate changes
None
Thank you! flinc.org/jobs Christian Bäuerlein • @fabrik42 • github.com/fabrik42
None