ChaseDream
搜索
返回列表 发新帖
查看: 2306|回复: 4
打印 上一主题 下一主题

前期准备

[复制链接]
跳转到指定楼层
楼主
发表于 2019-3-26 03:59:10 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
https://zhuanlan.zhihu.com/p/25688474不要像我一样学得太杂
没错我用了八个月的时间,但我完全可以缩短这个周期。就像任何大目标的开始,你都会犯错和走弯路,这其中总有你觉得可以做得更好的地方。
我研究了很多我并不需要的项目,其中的一些我认为我可能会在面试中用到,另一些我则认为是我开始工作时应该掌握的知识。我并不想成为团队中的吊车尾,然而事实证明我似乎准备过度了。
我用三周的时间阅读了一千页的 C++ 书籍,虽然现在我并不记得大部分内容,但我还是对 C++ 有了比较全面的了解。可结果却是在面试过程中我用的是 Python 而非 C++。我以为我需要掌握 C++、C 或者 Java,但我错了。所以应该勤问,而非假设。
其实我只需要看 3、4 本书而已,可我却阅读了远超这个数量的书籍。我有个代码目录,里面记录了我复习的几十个算法,其中大部分都不会在面试中遇到。你可以不用这样做。同时我在 YouTube 上也加班加点地观看了远超我需要的视频。
我应该早点停止看书和看视频,从而进行代码的编写。这样我可以用更多的时间去实践我所学的知识。记忆的关键在于重复训练。
一旦你开始学习新东西,你需要不断地回顾和练习。每一次的复习都能巩固你的知识。一次花费足够长的时间去学习一个东西并不会让你成为专家,成为专家需要你不断地回溯你的知识。你这样做了之后你就会发现你再也不会忘记任意一个细节。
为了帮助复习,我做了 1792 张卡片(电子卡片),这有点多了。空闲的时候(比如圣诞节购物时)我便在我的手机或者平板上复习这些知识。学习新知识和复习同时进行,就算我在新卡片上得到答案,我也不会把它标记为已知,除非我多次看到它并都能正确地回答出这个问题,我才将其标记为已知的。
我的不安全感(万一他们问我关于红黑树的问题)让我尽可能地学习远超需要的知识。
但我并不仅仅只是准备面试,我同时为在谷歌的职业生涯做准备,解决大规模的问题。这意味着精通算法能节省时间、空间和 I/O 等计算机资源。
我可能永远不需要知道最大流算法(Ford-Fulkerson),但当情况出现时,我知道我能解决它也并不是一件坏事,同时我也能知道问题出现在哪里。
▎结语
收藏收藏1 收藏收藏1
5#
 楼主| 发表于 2021-2-3 05:56:09 | 只看该作者
地板
 楼主| 发表于 2019-3-26 04:18:21 | 只看该作者
https://brianhsublog.blogspot.com/2015/08/blog-post_9.html
interview流程。 https://coderpad.io/
https://www.blogger.com/about/?r=1-null_user
如果通過第一關人資電話面試,人資會和你約第二關電話技術面試,時間可能是45~60分鐘,很多公司會用 collabedit 或 coderpad 這類線上協做的 code editor 來給你面試,Google 很有趣,是用 Google Doc 來考你,我想這樣是可以避免有任何程式語言上 syntax highlight的輔助功能幫忙你,你就只能多注意細節別寫錯字了。這關工程師打給你後會大概介紹一下公司,稍微了解一下你做過的 projects,就考你問題了。這類問題很多時候都是演算法及資料結構方面的問題,
板凳
 楼主| 发表于 2019-3-26 04:10:00 | 只看该作者
必看:博客https://brianhsublog.blogspot.com/search/label/%E9%9D%A2%E8%A9%A6
沙发
 楼主| 发表于 2019-3-26 04:07:05 | 只看该作者
https://segmentfault.com/a/1190000017263510
第1步:沉浸式课程
我开始找软件工程方面的沉浸式课程。App Academy和Hack Reactor都提供了一些免费的入门课程,帮助感兴趣的人群入门。Hackbright也有针对女性开展一些编程课程。
最终,我选择了Hack Reactor,它提供了为期一个月的结构化学习计划(SSP)课程。课程设置很实用,我认识的三名学员在完成课程后都获得了软件工程方面的工作。
第2步:沉浸式编程
决定选择Hack Reactor,之后我需要为SSP做准备。为此,我完成了Udacity上JavaScript的入门课程以及其他一些JavaScript在线课程。
针对SSP和Hack Reactor的沉浸式项目,我共花了四个月的时间学习编程,每周学习6天,每天12小时以上。这段时间,我不仅提高了解决问题的能力,还提高了对JavaScript的理解,而且还学习了前端和后端框架。
第3步:提高求职技能
在学习在线课程的过程中,我学习了很多概念,其中最主要的是算法和数据结构。
沉浸式课程中涵盖了工程师在工作中所需的技能。针对面试的练习时,掌握算法和数据结构是关键。
在提高面试技能时,我用到了以下资源:
  • CodePath :为期8周的课程,涵盖从数据结构到系统设计的所有最常见的面试问题。
  • InterviewCake:针对算法思维中最常见模式的指南
  • LeetCode :海量练习题
  • Grokking the System Design Interview: 解释如何权衡常见的系统设计问题,例如如何设计Instagram第6步:制定学习计划
    在学习Hack Reactor之后,我花了很多时间复习技术概念,为面试做准备。以下是我大致的学习计划:
    • 学习算法和数据结构
    • 学习系统设计
    • 完成一次黑客马拉松
    • 建立个人作品集
    • 记录下电话面试和现场面试的问题
    • 与他人一起练习
    第7步:充分利用社交网络
    让招聘人员更容易找到你。以下几个平台都是不错的选择:
    • LinkedIn
    • Hired
    • AngelList
    • GitHub
    向未来的雇主展示你的工作能力非常重要。项目链接,文档和清晰的代码更容易吸引招聘人员。
  • 第10步:进行职业规划
    你认为5年后你的职业发展会是怎样的?
    在面试中我常常会被问到上面这个问题。
    关于职业发展我有好几种选择,比如web端、移动端、网站可靠性和DevOps等等。
    同时还有后端、前端和全栈的选择。有时这些角色之间的界限很明显,有时却模糊不清。在学习和搜索的过程,虽然我不知道只会会选哪条路,但有些工作我更喜欢做,而有些却不喜欢做。
    比如,我不喜欢涉及到网站像素的问题,但我对移动端设计很感兴趣;设计架构和建立数据库有点乏味,但我喜欢获取大量数据并对其进行操作或可视化。


您需要登录后才可以回帖 登录 | 立即注册

手机版|ChaseDream|GMT+8, 2024-12-19 03:21
京公网安备11010202008513号 京ICP证101109号 京ICP备12012021号

ChaseDream 论坛

© 2003-2023 ChaseDream.com. All Rights Reserved.

返回顶部