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
140
Емоції: усвідомлення, прийняття, комунікація
gdgcherkasy
0
110
Kibana Plugin Development - Vlad Bolibruk
gdgcherkasy
0
80
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
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
390
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
480
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
270
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
190
Oracle Cloud Observability and Management Platform - OCI 運用監視サービス概要 -
oracle4engineer
PRO
2
14k
Webhook best practices for rock solid and resilient deployments
glaforge
2
300
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
150
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
560
Agent Skils
dip_tech
PRO
0
130
生成AIと余白 〜開発スピードが向上した今、何に向き合う?〜
kakehashi
PRO
0
140
配列に見る bash と zsh の違い
kazzpapa3
3
170
Red Hat OpenStack Services on OpenShift
tamemiya
0
130
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
200
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
120
GraphQLとの向き合い方2022年版
quramy
50
14k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
110
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
120
Facilitating Awesome Meetings
lara
57
6.8k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Design in an AI World
tapps
0
150
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