|
所在平台: Coursera |
课程主页: https://www.coursera.org/learn/cs-tech-interview
课程评论:没有评论
课程名称:掌握软件工程面试 概述:作为计算机科学专业的学生,您已经成为一名有能力的程序员,掌握了解决问题、编写算法和分析解决方案的技能,具备使用数据结构的工具。您可能已准备好进入实习或入门级软件工程职位,但能否成功获得面试机会,部分取决于您如何解决技术问题并在面试中沟通。这个课程旨在通过实践以及谷歌招聘和工程团队的支持,为您提供在多家科技公司面试成功的技巧、示例和练习机会。我们将帮助您组队练习,并提供求职建议及工作中成功的技巧。 大纲: 1. 欢迎及软件工程面试概述 - 本模块欢迎您加入我们的课程,重点介绍如何有效沟通您的技术能力。成功的求职面试需要您自信地表达解决复杂问题的能力。除了解决问题的能力,沟通技巧在工作中的重要性也不容忽视。 2. 现场编码:技术电话面试及其后 - 在这一模块中,您将练习编码技能,了解如何在技术电话面试中通过共享文档编写解决方案。我们将提供练习和技巧,帮助您轻松应对这一环节。 3. 阐述您所完成的工作 - 本周重点是如何讲述自己的项目经验和所遇到的技术问题及解决方案。我们将介绍STAR模型,并讨论有效的沟通技巧。您将制作一段视频展示自己的工作,并提交以便同行评审。 4. 临场算法思维 - 在最后一周,我们将再次考察现场解决问题的能力,学习如何解决更具挑战性的算法问题。我们将教授您一个六步法来应对技术问题,增强您的信心,并提供训练和自我评估的方法。 通过这些内容,课程旨在帮助学生提升技术沟通能力和解决复杂问题的技能,以便在求职和工作中取得成功。
Name:Welcome & What is a Software Engineering Interview?
Description:Welcome to our course on effectively communicating your technical abilities. This course focuses on landing a technical job and excelling in a technical role. To succeed in job interviews, you’ll need to be able to confidently articulate your ability to solve challenging problems and come up with new solutions under potentially stressful conditions. After getting a technical job, the role of communication increases even more. You’ll need to work with other members of the team, communicate technical challenges and successes, and potentially sell the value of your work to those outside the company. Our goal is that by the end of this course each and every one of you understands the importance of technical communication, and has received constructive feedback on areas of potential improvement. In achieving this goal you will also learn about algorithmic thinking on the fly, how to evaluate a good interview answer to a difficult technical problem, and how “soft” skills impact interview outcomes. In this module, we’ll begin to see what a technical interview looks like, from the perspective of a major tech company. We’ll then focus on how to best get the interview in the first place. If you're not in the job market right now, you might want to skim the videos in this module and skip ahead to the Resume Critique (for insights about how to present yourself in writing) or the Introductions assignment (on effectively presenting yourself in person).
Name:Welcome & What is a Software Engineering Interview?: Lesson Choices
Description:
Name:Live coding: the technical phone interview and beyond
Description:Now that you’ve gotten warmed up, it’s time to practice your coding skills. One of the things you’ll almost certainly be asked to do during a technical phone interview is to code up a solution to a problem in a shared text document (e.g. Google doc) while you are on the phone with the interviewer. This experience can be intimidating, unfamiliar and humbling if you are not prepared, so this week we will give you lots of practice and tips for getting through this part of the interview with flying colors.
Name:Explaining what you've already done
Description:This week, we’re going to focus on how to speak about your experiences working on projects and how to speak about the technical problems you’ve experienced and how you’ve solved those problems. We’ll introduce the STAR (Situation, Task, Action, Results) model for presenting your work, and discuss how to and how not to present the problem you worked on and the solution you developed. We’ll also discuss the communication skills that are critical to this task. It’s a fun week with lots of examples (both good and bad), which ends with an assignment where you will present your own work on video and submit this video for peer review.
Name:Explaining what you've already done: Lesson Choices
Description:
Name:Algorithmic thinking on the fly
Description:As we saw in week 2, coding on the fly can be a difficult task! In this final week of the course we’ll revisit the skill of live problem solving by looking at how to solve more challenging algorithmic problems (and write the code associated with the solution) on the whiteboard. You’ll recognize these problems as “classic” interview problems you’ve probably heard a lot about, designed to test your problem solving skills as well as your analysis and coding abilities. Don’t worry, we’ll teach you how to approach them with confidence through a 6-step process to addressing technical questions (hint: you don’t have to produce the perfect solution on the first try!). We’ll show you how to use this process in a number of examples. But of course, there is no substitute for practice, so we’ll set you up with how to train and evaluate yourself.
You’ve hit a major milestone as a computer scientist and are becoming a capable programmer. You now know how to solve problems, write algorithms, and analyze solutions; and you have a wealth of tools (like data structures) at your disposal. You may now be ready for an internship or (possibly) an entry-level software engineering job. But can you land the internship/job? It depends in part on how well you can solve new technical problems and communicate during interviews. How can you get better at this? Practice! With the support of Google’s recruiting and engineering teams we’ve provided tips, examples, and practice opportunities in this course that may help you with a number of tech companies. We’ll assist you to organize into teams to practice. Lastly, we’ll give you basic job search advice, and tips for succeeding once you’re on the job.