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
“Why JS is way to go for backend”
Search
GDG Cherkasy
February 15, 2019
Technology
0
78
“Why JS is way to go for backend”
Denys Pysmennyi “Why JS is way to go for backend”
GDG Cherkasy
February 15, 2019
Tweet
Share
More Decks by GDG Cherkasy
See All by GDG Cherkasy
Трансформація від розробника до ліда: байки та поради.
gdgcherkasy
0
130
Емоції: усвідомлення, прийняття, комунікація
gdgcherkasy
0
110
Kibana Plugin Development - Vlad Bolibruk
gdgcherkasy
0
78
CoreData, custom merge policy
gdgcherkasy
2
1.6k
macOS_for_iOS_devs2.pdf
gdgcherkasy
0
75
MQTT.pdf
gdgcherkasy
1
41
Инструменты Lean Product Management как точки пересечения проектов с "реальностью": хватит клонировать плохие решения!
gdgcherkasy
1
78
Насколько силен Иммунитет вашей организации?
gdgcherkasy
1
110
From Project Manager to CEO by Alyona Vlasiuk
gdgcherkasy
0
57
Other Decks in Technology
See All in Technology
戰略轉變:從建構 AI 代理人到發展可擴展的技能生態系統
appleboy
0
170
日本Rubyの会: これまでとこれから
snoozer05
PRO
6
250
株式会社ビザスク_AI__Engineering_Summit_Tokyo_2025_登壇資料.pdf
eikohashiba
1
140
Authlete で実装する MCP OAuth 認可サーバー #CIMD の実装を添えて
watahani
0
300
Kiro を用いたペアプロのススメ
taikis
4
2.1k
AgentCore BrowserとClaude Codeスキルを活用した 『初手AI』を実現する業務自動化AIエージェント基盤
ruzia
7
2.1k
なぜ あなたはそんなに re:Invent に行くのか?
miu_crescent
PRO
0
240
ルネサンス開発者を育てる 1on1支援AIエージェント
yusukeshimizu
0
130
スクラムマスターが スクラムチームに入って取り組む5つのこと - スクラムガイドには書いてないけど入った当初から取り組んでおきたい大切なこと -
scrummasudar
0
160
AWS Lambda durable functions を使って AWS Lambda の15分の壁を超えてみよう
matsuzawatakeshi
0
110
『君の名は』と聞く君の名は。 / Your name, you who asks for mine.
nttcom
1
140
さくらのクラウド開発ふりかえり2025
kazeburo
2
1.3k
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Paper Plane (Part 1)
katiecoart
PRO
0
2.4k
Faster Mobile Websites
deanohume
310
31k
Being A Developer After 40
akosma
91
590k
Designing for humans not robots
tammielis
254
26k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
51k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
Designing Powerful Visuals for Engaging Learning
tmiket
0
190
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
First, design no harm
axbom
PRO
1
1.1k
Fireside Chat
paigeccino
41
3.8k
Transcript
Denys Pysmennyi Why JS is a way to go for
backend
Will talk about • NodeJS to start project • NodeJS
&& Microservices • How to make back-end good again
DISCLAIMER: Language is just a tool, choose the right tool
for the right job* *JS is still the best
Some stats stackoverflow dou.ua Google searches
NodeJS awesome for small projects • Easy to start •
npm
NodeJS classic MEAN set-up
NodeJS classic MEAN set-up
NodeJS classic MEAN set-up
NodeJS classic MEAN set-up Express + ORM + Rest +
generator(blueprints) = MVC https://sailsjs.com
NodeJS classic MEAN set-up
NodeJS awesome for microservices
NodeJS awesome for microservices • Speed • Restart time •
Memory
NodeJS awesome for microservices • Speed • Restart time •
Memory
NodeJS performance • Each metric shows different result • Golang
is really good at concurrency • Js seems to be better at high concurrency then Java • PHP looks promising and scary
NodeJs performance (reqs/sec) https://medium.com/car2godevs/node-js-10-is-the-lts-the-enterprise-will-love-2395372a80c3
Ok, so how to build it?
What do we use in Taxify?
and we are hiring... • 15 million users • 500,000
drivers • 25 countries • 100+ developers • 100++ misro-services
What we use in Taxify? We’ve created our own framework
API generation Generated API Connect services Test Mocks Documentation, Visualization
Tests
Tests
Tests Component tests - balanced way for microservices Test Service
DB Mock
Tests Component tests - balanced way for microservices Test Service
DB Test Service DB Mock Mock Service DB
So how to build good backend • Good framework for
api • Good and right tests • What else?
Monitoring
Deployment
Good Backend: dependencies • Check dependencies • NPM scripts(rm -rf)
• Use NPM proxy: Verdaccio • nodesecurity.io
Good Backend: linters and code style • Little more Java,
little less Ruby • Read some Uncle Bob • Choose code style https://github.com/airbnb/javascript • Configure Eslint Tslint
Good Backend: typescript • DefinitelyTyped lib • TypeScript 3
Good Backend: async/callback • Callback are ok if you know
how to cook them • async/await • if you need more than 2 states: go with streams
Good Backend: async/callback • Callback are ok if you know
how to cook them • async/await • if you need more than 2 states: go with streams
Good Backend: some others tools • Debug: chrome://inspect debug from
browser • Deno - ts runtime from Node creator • GraphQL
Summary • Do NodeJS for fun • Do NodeJS for
enterprise • Do NodeJS good
Thank you! Denys Pysmenny
[email protected]
JavaScript developer