Scrum Master é um Inútil (não é só sobre isso)
Summary
TLDRThe speaker passionately discusses the challenges and benefits of rapid software development, emphasizing the importance of producing code in just 15 days without extensive documentation or testing. They advocate for Agile methodologies, particularly Extreme Programming, and share their experience teaching courses on intensive development. The speaker also touches on the differences between iOS and Android development, highlighting the pros and cons of each platform, and stresses the value of native development over cross-platform frameworks.
Takeaways
- 😀 The speaker expresses frustration with the demand for rapid production deployment within 15 days without extensive testing or documentation.
- 😅 There's a humorous tone when discussing the idea of a 'refém do Agio', suggesting a stressful but rewarding experience of intense learning.
- 🎓 The speaker shares their personal experience of teaching and the positive outcomes they've seen with their team, who are now capable of executing tasks independently.
- 🤖 There's an emphasis on the team's enthusiasm for working with neural networks and SVMs, indicating a preference for hands-on technical work over documentation.
- 📈 The speaker highlights a significant shift in the workplace, where traditional lengthy processes are being challenged in favor of quicker results.
- 🏃 The speaker advocates for an Agile approach, specifically mentioning Extreme Programming, and the importance of delivering working code within a short Sprint cycle.
- 📝 There's a critique of over-documentation and compliance processes that slow down development, suggesting a preference for the code itself to serve as the primary documentation.
- 🤔 The speaker questions the necessity of certain Agile practices, like the daily stand-up meeting, and ponders whether they are still relevant or have become 'inútil' (useless).
- 📱 The discussion touches on the differences between developing for iOS and Android platforms, highlighting the pros and cons of each.
- 🛠️ The speaker points out the challenges of Android development due to device fragmentation and the need for device farms for testing, contrasting with the more controlled iOS ecosystem.
Q & A
What is the main concern expressed by the speaker about the development process?
-The speaker expresses concern about the pressure to put something into production within 15 days without tests, documentation, or extensive development processes.
What does the speaker suggest about the Agile methodology and its implementation?
-The speaker suggests that the Agile methodology, specifically Extreme Programming, is being embraced by the team to deliver faster, with less emphasis on documentation and more on coding and production readiness.
What is the speaker's opinion on the importance of coding skills versus other aspects of software development?
-The speaker emphasizes the importance of coding skills over other aspects like documentation, suggesting that the team is more focused on practical coding and application of machine learning models like neural networks and SVMs.
What does the speaker imply about the traditional software development process?
-The speaker implies that traditional software development processes, with their heavy emphasis on documentation and extensive testing, are being challenged in favor of quicker, more agile methods.
What is the speaker's view on the role of user stories in the development process?
-The speaker questions the necessity of user stories, suggesting that they are part of the 'babosery' that is being cast aside in favor of faster development cycles.
What does the speaker think about the role of the 'coach' in the development team?
-The speaker views the coach as a facilitator who helps the team to adopt Agile practices and improve their skills, which is evident from the speaker's mention of giving intensive courses.
How does the speaker describe the team's reaction to the challenge of producing code in 15 days?
-The speaker describes the team's reaction as initially nervous but ultimately successful, as they managed to produce code and put it into production within the tight deadline.
What is the speaker's stance on the importance of testing in the development process?
-The speaker seems to downplay the importance of testing, suggesting that the focus should be on getting code into production quickly, even if it means bypassing traditional testing phases.
What does the speaker suggest about the future of software development practices?
-The speaker suggests that traditional practices are being disrupted, and there is a move towards more agile, less bureaucratic methods that prioritize speed and practical application over extensive documentation and testing.
What is the speaker's opinion on the use of Kotlin and Swift in mobile development?
-The speaker acknowledges the versatility of Kotlin, noting its use in both Android app development and backend development, while Swift is seen as more restricted to Apple's ecosystem, with potential for future expansion.
Outlines
😡 Frustration with Traditional Development Cycles
The speaker expresses frustration with the traditional development cycle, emphasizing the need for agility and speed. They recount a scenario where they were challenged to put something into production within 15 days without tests or documentation, highlighting the pressure of sprints and the exhaustion of intensive courses. The speaker celebrates the success of their team in executing tasks efficiently, bypassing the need for extensive documentation or user stories. They also touch on the concept of 'Extreme Programming' and how it challenges the established rules and bureaucracy of software development over the past 50 years.
📊 Agile Development and Story Points
The speaker delves into the concept of story points in Agile development, questioning the traditional understanding of points as time-based metrics. They emphasize that points should reflect complexity rather than time, and use a rule of three to illustrate their point. The speaker also discusses the importance of documentation through code and the benefits of native development for iOS and Android, comparing the pros and cons of each platform. They highlight the advantages of Swift and Kotlin, discussing their potential for low-level programming and the evolution of Swift's capabilities.
📱 Cross-Platform Development Challenges
The speaker compares the challenges of developing for Android versus iOS, emphasizing the fragmented nature of the Android ecosystem. They discuss the complexity of dealing with device-specific issues and the need for device farms for testing. The speaker also touches on the differences in the development approach between Android and iOS, highlighting the controlled environment of iOS and the broader, more diverse Android market. They conclude by discussing the specialization versus generalization in development, arguing that while cross-platform frameworks can be useful, they do not replace the need for platform-specific expertise.
Mindmap
Keywords
💡Agile Development
💡Sprint
💡Neural Networks
💡Extreme Programming (XP)
💡User Story
💡Compliance
💡Machine Learning
💡Code in Production
💡Documentation
💡Daily Standup
💡Cross-Platform Frameworks
Highlights
The speaker expresses frustration with the need for rapid production deployment within 15 days without extensive testing or documentation.
Mentions the importance of Agile methodology and the speaker's experience with intensive courses.
Discusses the team's success in executing tasks without the need for the speaker's intervention.
Highlights the team's enthusiasm for neural networks and SVMs, and their positive results.
The speaker contrasts the team's quick results with the traditional six-month development cycle.
Emphasizes the importance of user stories and the Agile process.
Criticizes the over-reliance on documentation and compliance in traditional development processes.
The speaker recounts a challenge to produce something in 15 days, which was met with surprise and success.
Mentions the president's advocacy for Extreme Programming and the speaker's alignment with it.
The speaker reflects on the team's ability to produce code in production within the tight deadline.
Discusses the president's happiness with the quick results and the breaking of traditional rules.
The speaker questions the reality of the situation and the role of artificial intelligence in generating the transcript.
Talks about the importance of the daily scrum meeting and its time efficiency.
The speaker humorously refers to someone as 'old' but acknowledges their relevance and connection to tech discussions.
Reflects on the speaker's experience and the reality of producing in 15 days without documentation.
The speaker discusses the pros and cons of developing natively for iOS or Android.
Mentions the potential for Swift to replace C++ and its advancements.
Discusses the use of Kotlin in the backend and its versatility.
Contrasts the controlled ecosystem of iOS with the vast variety of Android devices.
The speaker argues against the idea of being an expert in cross-platform frameworks without mastering the native platforms.
Emphasizes the ongoing learning and problem-solving required in native Android development.
The speaker discusses the challenges of state management and event handling in mobile development.
Concludes with the idea that while cross-platform frameworks are valuable, they have limitations in resource optimization and native optimization.
Transcripts
febra Ban Tech 2024 é indignação não
precisamos mais de ti vocês não
conseguem colocar algo em produção em 15
dias sem testes sem documentações sem
testes em 15 dias Ah isso aqui foi muito
bom né cara e alguém conta para ele que
é 15 dias porque no caso é um Sprint né
duas semanas cara é refém do Agio né eu
tenho dado cursos intensos é uma
experiência é muito cansativa mas eu é
prazerosa o negócio aprende e ar é minha
experiência própria eu tô desde agosto O
resultado é fantástico Então eu tenho
tido grandes grandes alegrias com o
pessoal meu meu meu time aqui fica cheio
de de chamadas e porque eles estão
executando Eles não precisam mais da ti
eles baixam os dados fazem os as rentes
neurais os svms faz eles adoram aquele
negócio pô os caras fazem rede neural né
E tem resultado entendeu então ati fica
nervosa porque a ti para você fazer
qualquer coisa para dar um bom dia na a
leva uns seis meses bom
dia bom dia tá quem sabe tu escreve um
Story um user Story aí para mim desse
Bom dia aí não assim ó o que eu ia
comentar nesse ponto cara é que eu falo
para vocês né Tem muito sistema que
bastava ser uma planilha Excel né Vocês
sabem disso né Muito sistema que a gente
queria podia ser uma planilha Excel
tranquilamente seis meses para você
fazer qualquer coisa tem por tem que ter
um stó de usuário tem que ter não sei o
qu tem que papá e pi pi e tem a
compliance tem o não sei o que que cara
que eu não precisa mais daquilo eu fi
tem o Coach Agile fazer o fcvs até o
presidente falou hoje eu sentei na
reunião falei assim ó eu quero algo em
produção daqui a 15 dias você tinha que
ver como é que os caras ficaram como 15
dias é 15 dias eu quero em produção e
não tem história de usuário não vai ter
tester não vai ter DB não vai ter nada
eu quero código em produção em 15 dias
você se indignaram com esse cara meu o
cara olha só meu o cara ele tá aqui
sendo advocate do do extreme go Horse
cara que eu sei que é o que vocês mais é
a metodologia que a gente mais gosta de
trabalhar cara só me dá aí o que que tem
para fazer eu faço é isso aí vamos codar
eu não quero documentação nenhuma nem o
arquitetura principal é é aí a galera
reclamando como se gostasse de escrever
documentação eu quero código em produção
Você tinha que ver eu quero código em
produção cara ol Como é que os caras
ficaram nervosos como em produção é 15
dias e botaram em 15 dias e estava
fracionando em 15 dias errado mas estava
fracionando e e e toma tome
teste vocês escutaram isso alguém pegou
o que ele falou agora aqui Alguém Peg
alguém pegou o que ele disse Deixa eu
voltar aqui essa parte eu não tinha
escutado e e e toma e tome teste Test e
produção cara e produção e funcionou aí
ficou o o presidente aqui todo feliz que
tá funcionando mas como é que foi
atropelei aquelas regras todas ti aquele
monte de baboseira que foi criado nos
últimos 50 anos você vê o ajai agora e
botaram em 15 dias e tava fracionando em
15 dias errado mas estava funcionando
errado mas tava funcionando aí colocaram
em 15 dias errado mas tava
funcionando azar e toma e tome teste t e
produ Pô tinha que tá abraçando cara
esse cara aqui ó e levantando ele para
cima tá ligado não cara e produção e
funcionou aí ficou o presidente que todo
feliz que tá funcionando mas como é que
foi atropelei aquelas regras todas da ti
aquele monte de baboseira que foi criado
nos últimos 50 anos você vê o ajo agora
vocês estão rindo mas o ajo que que os
caras F com o ajo industrializaram o ajo
a a a a como é que é aquela reunião a a
Daily a da tem que ter 15 minutos meu o
velho tá desculpa chamar ele de velho né
mas cara o cara tá mega atualizado tá
ligado com as discussões da bolha Tec
meu da bolha Dev vocês tem isso vocês
tem que concordar meu se tiver 16 corta
não tem que ser 15 tem que ter o scas
que é o inútil SC
Cara isso aqui foi gerado por
Inteligência Artificial não pode
ser isso aqui é real Alguém sabe se isso
aqui é real mesmo Alguém sabe se isso
aqui é real cara o screw Master é um
inútil diz ele ai eu não sei porque que
vocês estavam zoando o cara meu
Senhorzinho ali o Senhorzinho mandou o
scw Master é o inútil cara como é que
pode cara eu não tinha visto eu não
tinha visto até o fim esse clipe aqui a
minha experiência eu não tinha visto
Cara o que que a gente pode falar meu
desse cara cara é true né Eu acho que
ele é membro do shumi Com certeza não
assim ó sem dúvidas b o velho galo cinza
ali meu chegou não Não é o seguinte é
botar em produção em 15 dias não tem
essa documentação essa papagaiada aí de
de user Story ah Vamos pontuar Vamos
pontuar primeiro as coisas quem sabe eu
já desenhei para vocês isso né como é
que funciona o a nossa área né cara tem
tanto desenho aqui que eu já nem sei
mais onde que tá mas tudo que a gente
faz né O o o refine
depois vai pro pro backlog vai Sprint aí
tu estima teus pontos que os pontos não
é tempo é complexidade quantas
complexidades tu faz em duas semanas
Então se se o ponto não é tempo mas tu é
controlado por quantas semanas tu leva
para entregar quantos pontos no final Tu
faz uma regra de três e tá resolvido o
grande rollback exatamente eu tenho
quase absoluta certeza que ele é sim ele
vai ser sim um dos maiores apoiadores do
grande HB Só faltou ele falar pô paizão
ele é o chefe mais fraco do mano
davin se trocar de Dev acabou o sistema
tem isso né é a passagem de conhecimento
mas a documentação é o próprio código
cara desenvolvedor nativo iOS ou Android
quais os pros e os contras de cada um
essa é uma ótima pergunta Cara deixa eu
desenhar para ti de um lado tu tem o
Android do outro tu tem o iOS o que que
isso significa significa primeiro que tu
fez uma boa escolha tu não escolheu Por
exemplo algo como
cordova flutter react Native xamarin
zamarin ou algum alguma outra coisa
começamos por aí pela zoação Estou
brincando de um lado tu tem aqui
linguagens tá tu tem cotlin do outro
lado tu tem Swift bom qual que é a
diferença que já começa por aqui Swift
pessoal Ele é bem restrito hoje ao
desenvolvimento iOS Claro Mac OS vai
fazer aplicação hoje em dia tô falando
TV os enfim tô fazendo aqui
desenvolvimento de de apps bom existe aí
tá até a Apple falando que o Swift pode
substituir o c+ mais sim assim como o
Rust o Swift o Swift poderia substituir
o c+ mais tanto quanto o Rust a Apple
vai introduzir na nova versão do swift
várias coisas agora eu não eu não me
lembro do número da versão mas ela vai
introduzir Memory Safe vai melhorar
ainda mais Memory Safety vai fazer
também a questão de processamento
paralelo ser mais fácil então tem várias
questões aqui e não só isso com o Swift
tu consegue programar baixo nível por
que que tu consegue programar baixo
nível porque no objectiv C tu já
conseguia é uma API de direto com
assembly se eu não me engano Swift
assembly Swift assembly support se eu
não me engano o Swift vai ter um supor
assembly cara Apple Swift replace c+
Plus eu assim eu eu não eu eu estou com
um sentimento que talvez eu esteja
falando bobagem mas não eu acho que é
isso mesmo eu acho que é isso mesmo
confia em mim Confia confia em mim é
alguém trabalha com Swift aí não é isso
que eu quero não é compilar Swift para
web assembly pera aí cara eu eu tenho eu
tenho quase certeza meu tenho quase
certeza disso só um minutinho que agora
eu fiquei encucado Cara eu não tô maluco
Ah comp Safety inspir approach a data
Race Safety eles vão ter whatever
whatever acredita em mim acredita em mim
não fala do meu react então ó vamos
vamos voltar aqui pro pro desenho no
cotlin tu até consegue fazer algo baixo
nível com Java Native interface acredito
que é Java jni Java Native interface is
a foreign function interface program
Framework that naes Java code Running in
a java Martin to call to be Called by
Native applications programs in
libraries reting other languag like C c+
plus in assembly então através do jni tu
conseguiria acessar algo em assembly
rodar isso tá ligado rodar código
assembly código c+ mais então a
princípio Sim tu poderia ter uma função
lá Mega otimizada usar um jni E fazer
isso mas o meu ponto é cotlin ele tá
sendo hoje Já usado onde cara ele tá
sendo hoje usado no backend Então tu já
tem várias empresas usando cotlin no
backend então cotlin te dá digamos assim
uma opção que é eu sei cotlin para
Android aprend Cot para desenvolver
aplicativos mas eu consigo também talvez
migrar para backend com IOS isso é muito
mais difícil acontecer nesse momento não
existe mercado ainda para Swift backend
de forma falando de forma generalizada
genérica aqui tá qual outras diferenças
agora no iOS Tu tem a Apple num sistema
controlado tá então o hardware ele é
acoplado com o software Isso é muito bom
para ti é muito bom para ti são
vantagens outra coisa que tu tem
quantidades de dispositivos limitadas
são limitadas tu tem ali dois tamanhos
de iPad tu tem os iPhones e o Apple TV
no Android cara no Android tu tem
primeiro que o sistema não é integrado
com o hardware não é integrado com
software tem camadas né que a gente
chama de hardware abstract layer o How
então no hardware abstract layer
basicamente aqui embaixo tu vai ter os
fabricantes E aí aqui tu tem em cima o
Google e aí basicamente ele tá falando
assim olha tu tem que implementar tá
quando eu for chamar quando o Android
chamar tal coisa por favor implemente
essa nossa abstração aqui e tudo mais
tem várias outras coisas no meio do
caminho aqui tá tem várias outras coisas
aqui no meio desse caminho Ok então tu
tem aqui o Android Framework System api
Android api privilégio sistemas serviços
sistemas o o runtime do Android aí tu
tem o How aí tu tem as bibliotecas
nativas E aí tu tem o Linux Kernel e o
fabricante cara cada um aqui daqui para
baixo é assim é é cada um por si cara
cada um por si Cada um faz de um jeito
Tem um bug Ah esse bug só acontece em
tal dispositivos tem vários tickets no
desenvolvimento Android que tu pega tipo
assim ó o bug existe num eh device
específico a gente fala device specific
tem que ir atrás um device isso faz com
que tu precise ter por exemplo device
farms a gente tem Fields né farms seriam
basicamente assim fazendas de
dispositivos que é um dispositivo real
que tá rodando em algum lugar e tu
consegue conectar nele acessar
remotamente para testar o teu aplicativo
por quê Porque no Android tu tem milhões
milhões de dispositivos diferentes Lucas
aqui do que que tu tá falando cara eu tô
falando de TV Box Essas TV Box da Claro
da Oi esses essas TVZ que tu tem a
digital eu tô falando de Fire Stick da
Amazon eu tô falando de Android Android
TV dentro de um Chromecast eu tô falando
de um projetor eu tô falando do celular
tô falando do celular eu tô falando de
tablet diversos tipos de tablet eu tô
falando de Android TV que vem embo
embutido cara é muita coisa então
voltando na tua pergunta qual que é a
diferença Essas são as diferenças no
Android tu vai sofrer muito mais no
Android tu tem um mercado muito mais
abrangente no iOS tu tem um mercado
muito mais controlado um mercado
específico pra Apple eu não tô falando
que é fácil desenvolver pro iOS Não não
é fácil não é isso que eu quero dizer é
não é eu não tô falando que é eu não tô
falando que desenvolver para IOS é fácil
eu não tô falando isso eu tô falando que
a quantidade de dispositivos e não ter
um controle dos Fabricantes cara é é o
pior no desenvolvimento Android é isso
que quebra Qual outra diferença outra
diferença aqui que pode ter e é por isso
sabe sa Sabe o que que acontece cara aí
vocês me dizem tipo assim a Lucas tu é
especialista ou generalista porque eu
Codo em react Native eu Codo em flutter
e eu sou generalista porque eu consigo
entregar pras duas plataformas só que de
uma forma ou outra cara tu tá sendo um
especialista num num Framework Cross
platform A não ser que tu domine as duas
plataformas mas uma das coisas que me
indigna é alguém falar que consegue
dominar as duas plataformas porque usa
um Framework Cross platform sendo o cara
eu tô há mais de uma década trabalhando
com Android eu tô sempre aprendendo uma
coisa nova ou tendo que resolver é um
pepino que eu nunca resolvi antes que é
muito específico para Android não é um
pipino de tipo assim ai como é que eu
Controlo a gestão do meu estado que que
eu uso para gerenciar o meu estado cara
isso é igual para tudo tá ligado é é é
igual pro frontend web IOS android todo
mundo tem isso aí todo mundo tem essas
essas questões do tipo assim ah esse
estado ele tem que ser eu tenho que
pegar o último ou não eu tenho que usar
um hot ou um Cold observable esse estado
ele tem que continuar rodando e sendo
atualizado mesmo sem tem um subscriber
ou não então tipo assim a gerência de
estado Tu sempre vai ter uma outra
questão que é tipo assim ó o que que é
um estado e o que que é um evento que
que é um estado que que é um evento ah o
usuário clicou num botão e isso vai
fazer um evento e esse evento ele
atualiza o estado o estado atualiza o
botão ou a tela certo só que se o
usuário rotacionar o celular O celular
tá assim e ele vai mudar para ficar
horizontal a tua tela vai ser recriada
quando a tua tela foi recriada o teu
estado ele tava ã mantendo um evento lá
de Botão clicado tu emite o evento botão
clicado de novo ou não como é que tu
resolve isso aqui como é que tu faz ter
ã estados que são One shot que na
verdade são eventos aí tu vai ter dois
stream dois stream de de de estados tu
vai a tua interface vai ler de eventos
ou vai melhor vai mandar eventos tu vai
usar mvi tu vai enviar um Model View
intent aqui tu vai usar um Viper que que
tu vai usar qual qual arquitetura tu vai
usar cara esse tipo de de questionamento
aqui é igual para front end para mobile
PR para qualquer um tá Não é disso que
eu tô falando não é disso que eu tô
falando eu tô falando de pepinos tipo
assim a nível de looper event looper e
nível de trad de de renderização em
nível de serviço rodando e background do
que que fazer quando o usuário Sei lá o
usuário colocou em modo avião esse tipo
de questão entendeu One shot One
opportunity já diz o em É verdade cara
eu não tô falando mal dos frameworks tá
ligado o que eu tô querendo te dizer é
que tipo assim assim como eu sou
especialista Android Tu é um
especialista react Native Tu é um
especialista flutter tu acaba tendo que
testar outro aplicativo em múltiplas
plataformas e tu acaba sim tendo que
aprender ambos ambientes Sim mas tu não
faz otimização de recurso a nível nativo
em ambas as plataformas se tu faz show
de bola Mas provavelmente tu tocou no
nativo daí aí tudo bem aí tu tá sendo um
generalista daí faz sentido o que eu tô
falando não faz sentido do que eu tô
falando tu também é um especialista
تصفح المزيد من مقاطع الفيديو ذات الصلة
Swift for Android, Kotlin for iOS
Why I Do NOT Use Flutter for Mobile App Development
The Complete App Development Roadmap [2024]
M1. L2. Ubiquitous Computing: Mobile and Web Development
ISTQB FOUNDATION 4.0 | Tutorial 11 | TDD, BDD, ATDD | DevOps and Testing | CTFL | TM SQUARE
SE 11 : Agile Model | Complete Explanation with Examples | Waterfall VS Agile Model
5.0 / 5 (0 votes)