├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Audiense 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Audiense Core Learning Path 2 | >📢 This learning path is no longer used at Audiense. It has evolved into our [Apprentice Program](https://engineering.audiense.com/introducing-our-apprentice-program-fca7e73150c1), designed to facilitate skills liquidity within our organization. This program is structured to help develop the skills and competencies needed to achieve our team’s objectives. We have made the program public through this [free Notion template](https://www.notion.so/templates/apprentice-program). 3 | 4 | 5 | ## Fundamentals 6 | 7 | ### Solid 8 | - [Youtube Video: SOLID Object-Oriented Design by Sandi Metz](https://www.youtube.com/watch?v=v-2yFMzxqwU) 9 | - [Codely.tv: Principios SOLID Aplicados](https://pro.codely.tv/library/principios-solid-aplicados/77070/path/) (Spanish) 10 | - [SafariBooks Recorded Training: 11 | SOLID Principles of Object-Oriented and Agile Design](https://learning.oreilly.com/live-training/courses/solid-principles-of-object-oriented-and-agile-design/0636920239789/) 12 | 13 | ### Clean Code 14 | - [SafariBooks: Clean Code](https://learning.oreilly.com/library/view/clean-code/9780136083238/) 15 | - [SafariBooks: Clean Code Video Series 1](https://learning.oreilly.com/videos/clean-coder-clean/9780134843803) 16 | - [SafariBooks: Clean Code Video Series 2](https://learning.oreilly.com/videos/clean-code/9780134661742/9780134661742-CODE_01_01_00?autoplay=false) 17 | - [Clean Code Cheat Sheet](https://www.planetgeek.ch/2014/11/18/clean-code-cheat-sheet-v-2-4/) 18 | - [Blog post: The 4 rules of simple design](https://blog.jbrains.ca/permalink/the-four-elements-of-simple-design) 19 | - [Clean Code & SOLID Examples in Javascript](https://github.com/ryanmcdermott/clean-code-javascript) 20 | 21 | ### Domain Driven Design 22 | - [SafariBooks: Domain-Driven Design Distilled](https://learning.oreilly.com/library/view/domain-driven-design-distilled/9780134434964/) 23 | - [SafariBooks Videos: Domain-Driven Design Distilled](https://learning.oreilly.com/videos/domain-driven-design-distilled/9780134593449) 24 | - [SafariBooks: Implementing Domain-Driven Design](https://learning.oreilly.com/library/view/implementing-domain-driven-design/9780133039900/) 25 | - [SafariBooks: Patterns, Principles, and Practices of Domain-Driven Design](https://learning.oreilly.com/library/view/patterns-principles-and/9781118714706/) 26 | - [SafariBooks Online Training: Domain-Driven Design and Event-Driven Microservices](https://learning.oreilly.com/accounts/login/?next=/live-training/courses/-/0636920244516/) 27 | 28 | ## Architecture 29 | 30 | ### Clean Architecture 31 | - [SafariBooks: Clean Architecture: A Craftsman's Guide to Software Structure and Design](https://learning.oreilly.com/library/view/clean-architecture-a/9780134494272/) 32 | - [Codely.tv: Arquitectura Hexagonal](https://pro.codely.tv/library/arquitectura-hexagonal/66748/path/) (Spanish) 33 | - [SafariBooks Online Training: Breaking Down The Monolith](https://learning.oreilly.com/accounts/login/?next=/live-training/courses/-/0636920248378/) 34 | 35 | ### CQRS & Event-Driven Architecture 36 | - [Youtube Video: Matt Walters - How to CQRS in Node: Eventually Consistent, Unidirectional Systems with Microservices](https://www.youtube.com/watch?v=4k7bLtqXb8c) 37 | - [Codely.tv: Arquitectura Hexagonal](https://pro.codely.tv/library/arquitectura-hexagonal/66748/path/) (Spanish) 38 | - [Codely.tv: Comunicación entre microservicios: Event-Driven Architecture](https://pro.codely.tv/library/comunicacion-entre-microservicios-event-driven-architecture/74823/path/) (Spanish) 39 | 40 | ## Software Development Techniques 41 | 42 | ### Refactoring 43 | - [SafariBooks: Refactoring: Improving the Design of Existing Code](https://learning.oreilly.com/library/view/refactoring-improving-the/9780134757681/) 44 | - Carlos Buenosvinos - Refactoring use cases: (Spanish) 45 | - [Case I](https://www.youtube.com/watch?v=-RwBRikBXYc) 46 | - [Case II](https://www.youtube.com/watch?v=1W7fj-liFqE) 47 | - [Case III](https://www.youtube.com/watch?v=81dDKueYDLM) 48 | - [Case IV](https://www.youtube.com/watch?v=4F1YFzoT8Qc) 49 | - [SafariBooks: Working Effectively with Legacy Code](https://learning.oreilly.com/library/view/working-effectively-with/0131177052) 50 | 51 | ### Pair Programming 52 | - [Tuple’s Pair Programming Guide](https://tuple.app/pair-programming-guide) 53 | 54 | ### Trunk Based Development 55 | - [Website: Trunk Based Development ](https://trunkbaseddevelopment.com/) 56 | 57 | ### Test Driven Development (TDD) 58 | - [SafariBooks: Test Driven Development: By Example](https://learning.oreilly.com/library/view/test-driven-development/0321146530/) 59 | - [SafariBooks Clean Code Video Series: Advanced TDD—Parts 1 and 2](https://learning.oreilly.com/videos/clean-code/9780134661742/9780134661742-CODE_02_19_01) 60 | - Sandro Mancuso - Bank Kata (Outside-In TDD): 61 | - [Part I](https://www.youtube.com/watch?v=XHnuMjah6ps) 62 | - [Part II](https://www.youtube.com/watch?v=gs0rqDdz3ko) 63 | - [Part III](https://www.youtube.com/watch?v=R9OAt9AOrzI ) 64 | - [Youtube Video: Ian Cooper - TDD, Where Did It All Go Wrong](https://www.youtube.com/watch?v=EZ05e7EMOLM) 65 | - [Website: JBrains - The World's Best Intro to TDD, Level 1 - TDD Done Right](https://online-training.jbrains.ca/p/wbitdd-01) 66 | --------------------------------------------------------------------------------