// Mixpanel implementation The Mentoring Club - Yung-Yu Chen

Yung-Yu Chen (Denny) is multidisciplinary across ML and software engineering. On one hand, he has proven track records in autonomous systems, in particular object detection and tracking, and knowledge discovery with several publications on top-tier conferences. On the other, he builds and maintains backend systems that serve millions of traffic for fast-paced internet industries. Currently, he spares his leisure time on learning MLOps.

My Mentoring Topics

  • Study in Germany (EU) for master in computer science
  • Postgraduate planning: to stay or not to stay
  • How I transformed from a machine learning student to a scala backend engineer
  • How to success in job hunting during challenging moment, e.g. pandemic
  • Software engineering
  • Tech scene in Germany (EU)
  • Working culture comparison in Germany companies (startup vs mid-size vs big player)
  • Autonomous driving/flight engineering intern
  • Air Taxi (Automotive) Industries in Europe
  • Choosing German cities to live (NRW, Munich, and Berlin)
A.
25.May 2022

蠻有幫助,謝謝Yung-Yu開辦這個計畫,讓我更知道德國的科技業及工作情況!

C.
6.April 2022

It was very helpful! Mentor did explain it pretty well the pros and cons between studying master and working. And he did provide so many constructive suggestions for my future direction, many thanks again for this session!

C.
6.April 2022

Yes, it’s was really helpful. Thank you for providing the comparison of different regions, foreigner friendly tips. I appreciate to have the latest observation and sharing.

C.
5.April 2022

Yung-Yu was kind, patient, and extremely helpful. He's the kind of mentor you can trust and feel comfortable consulting difficult choices with right away, not to mention, very easy to talk to. I really appreciate his practical and insightful advice and experience sharing, and I hope to keep in contact with him and maintain a mentor-mentee relationship.

Designing Data-Intensive Applications - The Big Ideas Behind Reliable, Scalable, and Maintainable Systems
Martin Kleppmann

Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, we have an overwhelming variety of tools, including relational databases, NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords? In this practical and comprehensive guide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various technologies for processing and storing data. Software keeps changing, but the fundamental principles remain the same. With this book, software engineers and architects will learn how to apply those ideas in practice, and how to make full use of data in modern applications. Peer under the hood of the systems you already use, and learn how to use and operate them more effectively Make informed decisions by identifying the strengths and weaknesses of different tools Navigate the trade-offs around consistency, scalability, fault tolerance, and complexity Understand the distributed systems research upon which modern databases are built Peek behind the scenes of major online services, and learn from their architectures

View
System Design Interview - An Insider's Guide
Alex Xu

The system design interview is considered to be the most complex and most difficult technical job interview by many. Those questions are intimidating, but don't worry. It's just that nobody has taken the time to prepare you systematically. We take the time. We go slow. We draw lots of diagrams and use lots of examples. You'll learn step-by-step, one question at a time. Don't miss out.What's inside? - An insider's take on what interviewers really look for and why. - A 4-step framework for solving any system design interview question. - 16 real system design interview questions with detailed solutions. - 188 diagrams to visually explain how different systems work.

View
The Phoenix Project - A Novel about IT, DevOps, and Helping Your Business Win
Gene Kim, Kevin Behr, George Spafford

***Over a half-million sold! And available now, the Wall Street Journal Bestselling sequel The Unicorn Project*** “Every person involved in a failed IT project should be forced to read this book.”—TIM O'REILLY, Founder & CEO of O'Reilly Media “The Phoenix Project is a must read for business and IT executives who are struggling with the growing complexity of IT.”—JIM WHITEHURST, President and CEO, Red Hat, Inc. Five years after this sleeper hit took on the world of IT and flipped it on it's head, the 5th Anniversary Edition of The Phoenix Project continues to guide IT in the DevOps revolution. In this newly updated and expanded edition of the bestselling The Phoenix Project, co-author Gene Kim includes a new afterword and a deeper delve into the Three Ways as described in The DevOps Handbook. Bill, an IT manager at Parts Unlimited, has been tasked with taking on a project critical to the future of the business, code named Phoenix Project. But the project is massively over budget and behind schedule. The CEO demands Bill must fix the mess in ninety days or else Bill's entire department will be outsourced. With the help of a prospective board member and his mysterious philosophy of The Three Ways, Bill starts to see that IT work has more in common with a manufacturing plant work than he ever imagined. With the clock ticking, Bill must organize work flow streamline interdepartmental communications, and effectively serve the other business functions at Parts Unlimited. In a fast-paced and entertaining style, three luminaries of the DevOps movement deliver a story that anyone who works in IT will recognize. Readers will not only learn how to improve their own IT organizations, they'll never view IT the same way again. “This book is a gripping read that captures brilliantly the dilemmas that face companies which depend on IT, and offers real-world solutions.”—JEZ HUMBLE, Co-author of Continuous Delivery, Lean Enterprise, Accelerate, and The DevOps Handbook

View
The Pragmatic Programmer - From Journeyman to Master
Andrew Hunt, David Thomas

What others in the trenches say about The Pragmatic Programmer... “The cool thing about this book is that it’s great for keeping the programming process fresh. The book helps you to continue to grow and clearly comes from people who have been there.” —Kent Beck, author of Extreme Programming Explained: Embrace Change “I found this book to be a great mix of solid advice and wonderful analogies!” —Martin Fowler, author of Refactoring and UML Distilled “I would buy a copy, read it twice, then tell all my colleagues to run out and grab a copy. This is a book I would never loan because I would worry about it being lost.” —Kevin Ruland, Management Science, MSG-Logistics “The wisdom and practical experience of the authors is obvious. The topics presented are relevant and useful.... By far its greatest strength for me has been the outstanding analogies—tracer bullets, broken windows, and the fabulous helicopter-based explanation of the need for orthogonality, especially in a crisis situation. I have little doubt that this book will eventually become an excellent source of useful information for journeymen programmers and expert mentors alike.” —John Lakos, author of Large-Scale C++ Software Design “This is the sort of book I will buy a dozen copies of when it comes out so I can give it to my clients.” —Eric Vought, Software Engineer “Most modern books on software development fail to cover the basics of what makes a great software developer, instead spending their time on syntax or technology where in reality the greatest leverage possible for any software team is in having talented developers who really know their craft well. An excellent book.” —Pete McBreen, Independent Consultant “Since reading this book, I have implemented many of the practical suggestions and tips it contains. Across the board, they have saved my company time and money while helping me get my job done quicker! This should be a desktop reference for everyone who works with code for a living.” —Jared Richardson, Senior Software Developer, iRenaissance, Inc. “I would like to see this issued to every new employee at my company....” —Chris Cleeland, Senior Software Engineer, Object Computing, Inc. “If I’m putting together a project, it’s the authors of this book that I want. . . . And failing that I’d settle for people who’ve read their book.” —Ward Cunningham Straight from the programming trenches, The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how to Fight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation. Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.

View
The Courage to Be Disliked - The Japanese Phenomenon That Shows You How to Change Your Life and Achieve Real Happiness
Ichiro Kishimi, Fumitake Koga

“Marie Kondo, but for your brain.” —HelloGiggles “Compelling from front to back. Highly recommend.” —Marc Andreessen Reading this book could change your life. The Courage to Be Disliked, already an enormous bestseller in Asia with more than 3.5 million copies sold, demonstrates how to unlock the power within yourself to be the person you truly want to be. Is happiness something you choose for yourself? The Courage to Be Disliked presents a simple and straightforward answer. Using the theories of Alfred Adler, one of the three giants of nineteenth-century psychology alongside Freud and Jung, this book follows an illuminating dialogue between a philosopher and a young man. Over the course of five conversations, the philosopher helps his student to understand how each of us is able to determine the direction of our own life, free from the shackles of past traumas and the expectations of others. Rich in wisdom, The Courage to Be Disliked will guide you through the concepts of self-forgiveness, self-care, and mind decluttering. It is a deeply liberating way of thinking, allowing you to develop the courage to change and ignore the limitations that you might be placing on yourself. This plainspoken and profoundly moving book unlocks the power within you to find lasting happiness and be the person you truly want to be. Millions have already benefited from its teachings, now you can too.

View
Functional Programming in Scala
Paul Chiusano, Runar Bjarnason

Summary Functional Programming in Scala is a serious tutorial for programmers looking to learn FP and apply it to the everyday business of coding. The book guides readers from basic techniques to advanced topics in a logical, concise, and clear progression. In it, you'll find concrete examples and exercises that open up the world of functional programming. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology Functional programming (FP) is a style of software development emphasizing functions that don't depend on program state. Functional code is easier to test and reuse, simpler to parallelize, and less prone to bugs than other code. Scala is an emerging JVM language that offers strong support for FP. Its familiar syntax and transparent interoperability with Java make Scala a great place to start learning FP. About the Book Functional Programming in Scala is a serious tutorial for programmers looking to learn FP and apply it to their everyday work. The book guides readers from basic techniques to advanced topics in a logical, concise, and clear progression. In it, you'll find concrete examples and exercises that open up the world of functional programming. This book assumes no prior experience with functional programming. Some prior exposure to Scala or Java is helpful. What's Inside Functional programming concepts The whys and hows of FP How to write multicore programs Exercises and checks for understanding About the Authors Paul Chiusano and Rúnar Bjarnason are recognized experts in functional programming with Scala and are core contributors to the Scalaz library. Table of Contents PART 1 INTRODUCTION TO FUNCTIONAL PROGRAMMING What is functional programming? Getting started with functional programming in Scala Functional data structures Handling errors without exceptions Strictness and laziness Purely functional state PART 2 FUNCTIONAL DESIGN AND COMBINATOR LIBRARIES Purely functional parallelism Property-based testing Parser combinators PART 3 COMMON STRUCTURES IN FUNCTIONAL DESIGN Monoids Monads Applicative and traversable functors PART 4 EFFECTS AND I/O External effects and I/O Local effects and mutable state Stream processing and incremental I/O

View
Radical Candor: Fully Revised & Updated Edition - Be a Kick-Ass Boss Without Losing Your Humanity
Kim Scott

* New York Times and Wall Street Journal bestseller multiple years running * Translated into 20 languages, with more than half a million copies sold worldwide * A Hudson and Indigo Best Book of the Year * Recommended by Shona Brown, Rachel Hollis, Jeff Kinney, Daniel Pink, Sheryl Sandberg, and Gretchen Rubin Radical Candor has been embraced around the world by leaders of every stripe at companies of all sizes. Now a cultural touchstone, the concept has come to be applied to a wide range of human relationships. The idea is simple: You don't have to choose between being a pushover and a jerk. Using Radical Candor—avoiding the perils of Obnoxious Aggression, Manipulative Insincerity, and Ruinous Empathy—you can be kind and clear at the same time. Kim Scott was a highly successful leader at Google before decamping to Apple, where she developed and taught a management class. Since the original publication of Radical Candor in 2017, Scott has earned international fame with her vital approach to effective leadership and co-founded the Radical Candor executive education company, which helps companies put the book's philosophy into practice. Radical Candor is about caring personally and challenging directly, about soliciting criticism to improve your leadership and also providing guidance that helps others grow. It focuses on praise but doesn't shy away from criticism—to help you love your work and the people you work with. Radically Candid relationships with team members enable bosses to fulfill their three core responsibilities: 1. Create a culture of Compassionate Candor 2. Build a cohesive team 3. Achieve results collaboratively Required reading for the most successful organizations, Radical Candor has raised the bar for management practices worldwide.

View
The Mythical Man-Month
Essays

Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for anyone managing complex projects. These essays draw from his experience as project manager for the IBM System/360 computer family and then for OS/360, its massive software system. Now, 20 years after the initial publication of his book, Brooks has revisited his original ideas and added new thoughts and advice, both for readers already familiar with his work and for readers discovering it for the first time. The added chapters contain (1) a crisp condensation of all the propositions asserted in the original book, including Brooks' central argument in The Mythical Man-Month: that large programming projects suffer management problems different from small ones due to the division of labor; that the conceptual integrity of the product is therefore critical; and that it is difficult but possible to achieve this unity; (2) Brooks' view of these propositions a generation later; (3) a reprint of his classic 1986 paper "No Silver Bullet"; and (4) today's thoughts on the 1986 assertion, "There will be no silver bullet within ten years."

View
The Culture Map - Breaking Through the Invisible Boundaries of Global Business
Erin Meyer

An international business expert helps you understand and navigate cultural differences in this insightful and practical guide, perfect for both your work and personal life. Americans precede anything negative with three nice comments; French, Dutch, Israelis, and Germans get straight to the point; Latin Americans and Asians are steeped in hierarchy; Scandinavians think the best boss is just one of the crowd. It's no surprise that when they try and talk to each other, chaos breaks out. In The Culture Map, INSEAD professor Erin Meyer is your guide through this subtle, sometimes treacherous terrain in which people from starkly different backgrounds are expected to work harmoniously together. She provides a field-tested model for decoding how cultural differences impact international business, and combines a smart analytical framework with practical, actionable advice.

View