tříštění pozornosti • nedostatek informací • časté změny požadavků • nepoužívané komponenty • rozepře, hledání konsensu • únava, práce pod tlakem • rutinní, mravenčí práce • zastaralé závislosti • support
spuštění ◦ rozchození projektu ◦ API docs s příklady • lint, .editorconfig, format on save • kód by měl být hlavně čitelný • nemíchejte jazyky • trvalý refactoring • šablony, startery • YAGNI
asi něco chybí ◦ podmíněné pipelines ◦ pipelines as code • pipeline do 2-3 minut ◦ nepodceňujte CI HW • release ◦ by tag only ◦ trunk-based ?vs.? feature ◦ feature flagy, A/B testing, paralelní prostředí
◦ hokejová střídačka vs fluidní tým ◦ neizolujte support tým • toolmaker nechce být každý • R&D ◦ ideálně všichni ◦ podcasty, knihy, konference ◦ technology radar(y) • remote-first, BYOD, VPN & go
hodnotného softwaru. Vítáme změny v požadavcích, a to i v pozdějších fázích vývoje. Agilní procesy podporují změny vedoucí ke zvýšení konkurenceschopnosti zákazníka.
potřeby a důvěřujeme, že odvedou dobrou práci. Nejúčinnějším a nejúspornějším způsobem sdělování informací vývojovému týmu z vnějšku i uvnitř něj je osobní konverzace.
◦ máte plnou kontrolu ◦ je úzce šitá na míru pro vás ◦ ale - musíte si to supportovat sami • interní aplikace a nástroje ◦ vznikají vždy z potřeby ◦ nechcete generické řešení • občas se z toolu stane produkt
a dokumentace kódu ◦ prototyping, rutiny • nutný dozor (nejen dohled) • zajímavé koncepty ◦ human TDD + AI implementace ◦ what does this do? ◦ search dokumentace • velmi chybí "offline mód" • zatím slabá customizace
• sejděte se neformálně • skautské pravidlo ◦ zpevňujte testy s každou novou feature nebo fixem ◦ refactoring jako denní chleba • odstraňujte problémy hned • budujete mindset • zpomalte, jděte správným směrem ◦ raději dobře, než zbrkle ◦ nebo aspoň indiánský běh
… began coding … …the design team had not provided her with all of the necessary assets for the page. …Sarah took a break to grab a snack and stretch… …committed her code to version control before updating her to-do list for the next day. Overall, Sarah had a productive and enjoyable day as a front-end developer.
… began coding … …he encountered an issue with the database connection. …Just as he was about to reach out to the database administrator for assistance, his computer suddenly crashed and he lost all of his unsaved work. …Frustrated, Jason took a break to grab a snack… …updated his to-do list for the next day… …feeling accomplished despite the initial hinderances he had faced.
… began coding … …The design team had provided Alex with a mockup of the chat feature, but it didn't fit well with the existing design… …He also took breaks to stretch and grab a snack… …committed his code to version control before updating his to-do list for the next day. Overall, Alex had a productive and enjoyable day as a full-stack developer.
… began coding … …she encountered an issue with the design assets. …She also took breaks to stretch and grab a snack… …committed her code to version control before updating her to-do list for the next day. Overall, Laura had a productive and enjoyable day as a mobile developer.
have discussed the design team. Play out how this conversation could go in the style of a theater play script. Sarah: "I can't believe how much time I wasted waiting for the design team to provide me with the necessary assets for the responsive layout." Jason: "I had a similar issue yesterday with the payment gateway integration. The mockup they provided didn't match up with the actual design of the site." Alex: "Same here with the chat feature. The design just didn't fit with the rest of the app." Laura: "And don't even get me started on the design assets for the push notification feature. They were in a totally different design tool than what I use." Sarah: "Why do they keep doing this? It's like they don't understand the importance of timely communication and collaboration in the development process."
on, the designers worked with the developers on their projects, trying to iron out any issues and come up with creative solutions. However, some of the developers proved to be more difficult to work with than others. Sarah, the frontend developer, was defensive and uncooperative when Rachel tried to explain the issues with the responsive layout. Jason, the backend developer, was unresponsive and slow to provide the necessary information for the payment gateway integration. Alex, the full-stack developer, was resistant to any suggestions for improving the chat feature. And Laura, the mobile developer, was disorganized and constantly changed her mind about the design for the push notification feature.