Jak uczyć się od najlepszych za 0 zł?
W pracy często nie dane jest nam mierzyć się z problemami ogromnej skali i związanymi z dużą liczbą użytkowników. Nie są to również wyzwania, które możemy sobie z łatwością zreplikować pracując nad naszym domowym projektem. Jak więc zdobywać wiedzę z tego zakresu? Dziś przedstawię Wam jeden (całkowicie darmowy) sposób na to, by rozwinąć się w tym temacie.
Produktów tych marek używasz z pewnością na co dzień. Są to duże firmy technologiczne, obsługujące tysiące użytkowników każdego dnia. Czy zastanawiałeś się, w jaki sposób są zbudowane ich aplikacje? Jak na co dzień wygląda praca nad tymi produktami?
Okazuje się, że możemy o tym przeczytać - sporo się nauczyć i poszerzyć nasze horyzonty. Wiele firm technologicznych prowadzi blogi, gdzie programiści, programistki (i nie tylko!) piszą o swoich doświadczeniami z pracy nad produktami o ogromnej skali. Opisują techniki ich projektowania i tworzenia, ich utrzymywania oraz zapewniania jakości, a także dzielą się wnioskami z pracy z różnorakimi technologiami (często np. tworzonymi bezpośrednio przez nich).
Co jest szczególnego w blogach dużych firm technologicznych w porównaniu do innych blogów technicznych?
- rozwiązują problemy związane z ogromną skalą - nie ma dużo aplikacji, które mierzą się z tak dużym ruchem; jeśli na co dzień nie mamy tego typu wyzwań, jest to świetny sposób na to, by poszerzyć własne horyzonty,
- większa ilość pracowników pozwala im na pracę nad detalami, które dla innych są nieosiągalne - tworzą własne narzędzia, mają zespoły, których głównym zajęciem jest usprawnianie pracy innym zespołom, mają czas na to, by skupiać się na detalach, a my możemy korzystać z ich wniosków i osiągnięć,
- dzielą się doświadczeniami, nie teorią - ciekawie jest czytać o tym, jak podchodzą do migracji między różnymi technologiami, o wnioskach z ostatniego incydentu czy jakimi zasadami i wartościami kierują się w swoim zespole developerskim,
- oprócz technologii, często dzielą się informacjami o organizacji swojej pracy, współpracy między różnymi rolami w zespole czy zarządzaniu na taką skalę.
Skompilowałam dla Was listę ciekawych blogów z linkami do artykułów, które mnie zainteresowały:
Netflix Tech
W tym zestawieniu nie mogło zabraknąć Netflixa. Na ich technicznym blogu możemy przeczytać o streamingu video, infrastrukturze, decyzjach produktowych i lekcjach z rozwijania systemów, z których na co dzień korzysta ogromna liczba użytkowników. Polecam równie zajrzeć na ich kanał na YouTube poświęcony tworzeniu UI - Netflix UI Engineering.
Ciekawe artykuły:
- Full Cycle Developers at Netflix — Operate What You Build
- Delivering Meaning with Previews on Web
- Our learnings from adopting GraphQL
- GraphQL Search Indexing
Dropbox.Tech
Pisząc o blogu Dropboxa, nie mogę nie wspomnieć o szacie graficznej. Wygląda schludnie i bardzo łatwo się czyta. Dla mnie cudo! Jeśli chodzi o zawartość to najbardziej rozbudowany jest dział Infrastruktura. Blog jest mocno techniczny, poza infrastrukturą poruszane są również tematy: Frontend, Mobile, Security, Machine Learning. Możemy również przeczytać case study z wprowadzania większych zmian technologicznych np. migracji z Pythona 2 do 3 czy z CoffeeScriptu do TypeScriptu.
Ciekawe artykuły:
- On working with designers
- Rewriting the heart of our sync engine
- Engineering Dropbox Transfer: Making simple even simpler
- The Programmer Mindset: Main Debug Loop
- The Great CoffeeScript to Typescript Migration of 2017
Slack.engineering
Na blogu prowadzonym przez zespół inżynieryjny Slacka możemy znaleźć opisy wielu procesów, których używają w pracy nad swoim produktem, np. w jaki sposób prototypują nowe funkcjonalności czy wypuszczają nowe wersje aplikacji. Dodatkowo można przeczytać o tym, jak wygląda standardowy dzień w Slacku dla osób na różnych stanowiskach czy jak radzili sobie z wyzwaniami, które pojawiały się przed ich aplikacjami. Polecam zajrzeć, każdy znajdzie tam coś dla siebie.
Ciekawe artykuły:
- Scaling End-to-End User Interface Tests
- Prototyping at Slack
- Deploys at Slack
- How Big Technical Changes Happen at Slack
Spotify R&D | Engineering
Spotify sporo pisze o ludziach, przeprowadza wywiady ze swoimi pracownikami, pytając ich jak spędzają dnie i co jest częścią ich pracy. Ciekawie jest podejrzeć jak pracują i organizują sobie pracę inni. Opisują również techniki, które stosują na co dzień, np. golden paths czy ADR (Architecture Decision Record), a także zasady, którymi się kierują. Czysto technicznych postów również się trochę znajdzie.
Ciekawe artykuły:
- How We Use Golden Paths to Solve Fragmentation in Our Software Ecosystem
- Reach for the Top: How Spotify Built Shortcuts in Just Six Months
- When Should I Write an Architecture Decision Record
- First things first, Trust each other
- Building a technical career path at Spotify
Co byście dodali do tej listy? Na jakie techniczne blogi zaglądacie?
Zdjęcia wykonane przez freddie marriage, Austin Distel i Mollie Sivaram, dostępne na Unsplash