点击上方“公众号” 可以订阅哦!
跟谷歌招聘委员会成员
学系统设计!
特邀讲师
大鲲,常春藤名校计算机博士,在谷歌工作多年,面过各种级别的数百求职者,现为谷歌招聘委员会(Hiring Committee)成员。
是的,传说中让大家面完谷歌后忐忑不安的Hiring Committee成员之一,从幕后走出来,教授大家System Design知识。
这门系统设计课程侧重什么?
大鲲的课程不会把“how to design Twitter”、“how to design Netflix”、“how to design xxx”等面试题套路一路讲下来。
根据大鲲的面试经验:很多求职者遇到系统设计类问题,会硬搬已有的解题套路或者答案,但是,系统设计类问题非常open ended,这种做法经常让面试官觉得你“驴唇不对马嘴”,并且“给你暗示你也不听,甚至屡教不改”。
大鲲的课程会先讲授工业界系统设计相关知识,让你先理解Why,然后再讲解如何应用这些知识来设计系统。我们希望你不光是掌握应对面试的技巧,也能提高对系统设计的理解和应用能力。
课程安排:
第一课
Part 1:
Insights on system design interviews. Knowledge test. Experience test. The actual interview question. Reading the interviewer’s mind.
从面试官的角度探究为什么要设计system design interview,具体考察什么
Part 2:
An overview of important technologies used in internet application companies.
Concepts of servers, data centers, http(s) communication, RPC communication, testing, protocol buffer, load balancing, QPS, databases, map reduce.
这是用来扫盲的High Level Overview,也给出了课程将会覆盖的内容
第二课
Part 1:
Testing — Is it political correct in the programing world?
Unit tests, integration tests, mocking, test flakiness. How to write good unit tests.
Hermetic tests.
大鲲老师认为很重要、有很多争议的一个话题。
Part 2:
Data centers, machines, server jobs, load balancing.
Life of a query, http(s) requests, RPC requests, protocol buffers. Server resource planning.
第三课
Part 1:
Distributed NoSQL databases.
Why NoSQL DBs are so popular? Performance, Availability, Consistency. Considerations for strong consistency. A detailed analysis of bigtable and its pros and cons. NoSQL database Schema design.
Part 2:
Map reduce, its theory and design.
Applications that are suitable for map reduce.
第四课
System design interview questions analysis.
Three steps to beat the system design interviews.
1. Drawing a diagram.
2. Design the database
3. Analyze the life cycle of the operations.
这里会讲解如何应用前面几节课的知识来应对具体的面试题目。One class can typically cover 3-4 interview questions in depth.
第五课
This class will go through common design patterns and explain how they are used in the real world software development.
How Singleton pattern is used?
How publisher and subscriber pattern is used?
How dependency graph is used?
How scheduled refresh job can be implemented.
etc
第六课
System design interview questions analysis. 3-4 questions will be analyzed in depth.
再次将理论知识应用到实践中,深入讲解几道系统面试题目。
第七课
把大家在之前课程里的常见问题继续深入讲解,给出更多面试题目分析,并且针对大家求职面试以及职业发展,进行Q&A sections:
How to prepare the technical interviews.
Do you need to finish all the questions in leetcode?
How important are prior experiences.
What are hiring committees looking for?
Software Development Engineer VS Software Development Test Engineer VS Site Reliability Engineer and how the roles may affect your career.
Frontend vs Backend engineers.
课程长度:
每次课2小时。
上课时间:
10月7日开始,西海岸时间每周六下午2点。
所需基础:
required:学过操作系统或者分布式系统,或具备相关的基础知识。
optional:了解常见的设计模式
如果需要补充基础,可以参考一亩三分地OS公开课版:
http://www.1point3acres.com/bbs/forum-203-1.html
报名费用:
第一课低价试听:
  • 单人报名18美元,支付链接:https://paypal.me/warald/18
  • 凑齐三人报名,每人8美元,支付链接:https://paypal.me/warald/8
支付链接其实就是把
https://paypal.me/warald/xxx 里的xxx替换为数字
为什么不免费试听?
按照这门课的内容和质量,8-18美元很低。我们希望你能commit时间来认真听课,而不是报了名不参加或早退等。
后续课程报名:
第一次课之后,如果打算继续报名,费用为:
  • 单人报名,999美元,支付链接:https://paypal.me/warald/999
  • 凑齐三人报名,每人850美元,支付链接:https://paypal.me/warald/850
凡是三人报名,各自付费,完成之后:
  • 每个人从自己的Paypal支付邮件发信给1point3acres.com AT gmail
  • 邮件标题为:“团购系统设计课程 + $xx” – 请把xx替换成你支付的具体数目
  • 邮件里请写明跟你一起报名的电子邮件还有哪些
注册信息:
无论是个人还是集体报名,我们确认之后,会发送Zoom在线讲座注册信息到你Paypal支付的电子邮箱。谢谢你的耐心等候。
请注意:
  • 请早点完成注册,zoom系统会在开课之前发通知提醒你。
  • 课程支付之后不退款。
  • 有任何问题,请电子邮件联系:1point3acres.com AT gmail
Special Note:
大鲲老师是否会把谷歌的题库跟大家分享?
大鲲老师是否可以帮我查询求职状态或者推我一把?
类似问题,答案都是NO。
很多学校,比如CMU和NEU,都聘请一些在工业界任职的老师授课。与这些老师一样,大鲲希望传授知识,而不是损害公司利益来谋利。
在课程中,大鲲老师会分享他多年的经验心得,但不会告诉你谷歌内部系统的技术细节;面试题目是他从网上公开题目里精选的,并且进行了扩充和引申。同时,这门课上你学到的WHY and HOW,当然会帮你应对各家公司的系统面试题目。
点击“阅读原文”
继续阅读
阅读原文