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
Como escolher uma stack para meu projeto?
Search
Vitor Mendrone
July 13, 2019
Technology
0
17
Como escolher uma stack para meu projeto?
Vitor Mendrone
July 13, 2019
Tweet
Share
More Decks by Vitor Mendrone
See All by Vitor Mendrone
Como se tornar indispensável em um mercado em crise?
mendrone
0
74
Expressões Regulares
mendrone
0
30
A arte da composição
mendrone
0
20
Future Proof CSS - 2019
mendrone
0
71
Vue.js - O Antes, o Durante e o Depois
mendrone
0
100
Future Proof CSS
mendrone
1
95
High Speed Workflow
mendrone
4
130
Usabilidade - O bom senso é o seu melhor amigo
mendrone
0
79
Um Simples Checkup Pode Salvar a Sua Loja Virtual
mendrone
0
56
Other Decks in Technology
See All in Technology
Jaws-ug名古屋_LT資料_20250829
azoo2024
3
210
Kiroと学ぶコンテキストエンジニアリング
oikon48
4
1.9k
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
710
クラウドセキュリティを支える技術と運用の最前線 / Cutting-edge Technologies and Operations Supporting Cloud Security
yuj1osm
2
240
Product Management Conference -AI時代に進化するPdM-
kojima111
0
270
AWSで推進するデータマネジメント
kawanago
0
730
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
100
プロダクトの成長に合わせたアーキテクチャの段階的進化と成長痛、そして、ユニットエコノミクスの最適化
kakehashi
PRO
1
110
LLM翻訳ツールの開発と海外のお客様対応等への社内導入事例
gree_tech
PRO
0
420
microCMS 最新リリース情報(microCMS Meetup 2025)
microcms
0
380
努力家なスクラムマスターが陥る「傍観者」という罠と乗り越えた先に信頼があった話 / 20250830 Takahiro Sasaki
shift_evolve
PRO
2
130
Function Body Macros で、SwiftUI の View に Accessibility Identifier を自動付与する/Function Body Macros: Autogenerate accessibility identifiers for SwiftUI Views
miichan
2
150
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Scaling GitHub
holman
463
140k
What's in a price? How to price your products and services
michaelherold
246
12k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
A Tale of Four Properties
chriscoyier
160
23k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
GraphQLとの向き合い方2022年版
quramy
49
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Side Projects
sachag
455
43k
Transcript
None
Vitor Mendrone Senior Developer
None
None
work.co/careers/technology
Como escolher uma stack para meu projeto?
None
DISCLAIMER
STACK Conjunto de tecnologias (linguagens, frameworks, bibliotecas) utilizadas como base
de um sistema. Ex.: Javascript, Vue, Redux, Node, Mongo
Por que falar sobre isso?
DECISÕES ERRADAS Todos os dias desenvolvedores iniciam projetos críticos com
stacks baseadas em hype, desejos pessoais e percepções incorretas da realidade.
None
Empolgação Medo Nervosismo
NOSSA CARREIRA DEPENDE DISSO. Entregar produtos no prazo, ter uma
ampla visão do negócio e entender os riscos de cada projeto.
Processo Mensurável Técnico Previsível
Eliminar Causas
Eliminar Causas Perguntas certas
MODELO MENTAL Problema Solução ?
Todos os modelos estão errados. Box, George E. P.; Norman
R. Draper (1987). Empirical Model-Building and Response Surfaces, p. 424, Wiley. ISBN 0471810339 https://en.wikipedia.org/wiki/All_models_are_wrong
None
[Estatisticamente] é impossível que modelos teóricos reproduzam com exatidão o
mundo real
Empirical Model-Building and Response Surfaces George Edward Pelham Box Norman
Richard Draper
... todos os modelos são aproximações. Essencialmente, todos os modelos
estão errados, mas alguns são uteis.* * Tradução livre
None
O que ignorar
O que ignorar O que importa
+ 40 perguntas - 20 perguntas
4 PILARES
Produto
Algumas tecnologias são mais indicadas para problemas específicos. Ex.: Python
para computações complexas ou Node para um chatbot. Qual problema você quer resolver?
Uma ferramenta interna, não crítica, utilizada por poucos usuários e
em um ambiente controlado, permite (muito) mais experimentações. Quem serão os usuários?
O espaço para riscos usualmente é proporcional ao tempo disponível.
Qual o prazo de entrega?
Garanta que a tecnologia escolhida é capaz de suportar a
carga de usuários em todas as frentes. Qual a estimativa de usuários?
Por quanto tempo esse produto permanecera no ar? É apenas
um teste de mercado? Uma campanha com data para acabar? Ou um produto com existência indefinida? Qual o ciclo de vida desse produto?
Pessoas
Será necessário recrutar mais desenvolvedores ou investe em treinamentos para
o time atualmente disponível? O time atual tem interesse na tecnologia escolhida? O time necessário para desenvolvimento está disponível?
Considere que, durante o aprendizado, o time terá 1/10 da
performance que poderia ter com uma linguagem ou paradigma já dominado por todos ou pela maioria. É necessário introduzir uma nova linguagem ou um novo paradigma?
Considere que, caso seja necessário, esse desenvolvedor terá sua performance
reduzida enquanto transfere conhecimento ao resto do time. Alguém no time já tem experiência utilizando essa stack?
Pessoas entediadas podem optar por tecnologias ultra modernas, "hipsters" e/ou
underground que tornam o recrutamento quase impossível. E entregar o projeto também. Você ou o time estão entediados?
Duas coisas que você nunca deve fazer quando está irritado:
usar !important e tomar decisões de stack. Você está irritado?
Negócios
Quanto mais importante ou crítico, menos espaço para riscos. Qual
a importância do projeto na estratégia de negócios da empresa?
Por mais semelhante que seja a proposta de produto, variações
de ambiente como time e expertise não são emuláveis. Sua decisão se baseia apenas na stack do concorrente?
É impossível garantir que as muitas variáveis envolvidas em um
projeto serão novamente as mesmas. Sua escolha se baseia apenas em sua experiência com projetos anteriores?
Tecnologia
Nosso mercado muda rapidamente. Crie produtos modulares e sempre esteja
preparado para mudanças. A stack é engessada?
De preferência para licenças permissivas, que não limitam o tipo
de produto/ projeto a ser construído. A licença é compatível com o negócio e o projeto?
Cheque a quantidade e qualidade das respostas no Stack Overflow,
issues no Github, livros, conferências, Meetups, artigos e cursos Existe uma comunidade ativa?
Documentação é mais do que uma seção com um exemplo
de uso. Procure documentações de API, guias para contribuição e faça um deep dive no código fonte. A documentação é compreensível?
Procure evidências de que a biblioteca ou linguagem evoluiu ao
longo do tempo e se possui mais de uma major version estável. Está em evolução?
None
None
10 pontos 50 pontos 20 pontos
Inspire-se!
stackshare.io Stacks dos produtos mais populares do mundo com comentários
dos membros do time. Diversos insights valiosos sobre downsides de diversas tecnologias.
builtwith.com Menos preciso porém um bom aliado para identificar algumas
das tecnologias de produtos não listados no stackshare.io
Feito é melhor do que perfeito. Escolha a stack que
te dê mais segurança de que terá sucesso em entregar o produto no prazo e com as características definidas no roadmap.
OBRIGADO!
Work & Co 231 Front St, 5th Floor, Brooklyn, NY
11201 +1 347-470-4803
[email protected]
work.co