活跃农民

- 积分
- 381
- 学分
- 个
- 大米
- 颗
- 鳄梨
- 个
- 水井
- 尺
- 蓝莓
- 颗
- 萝卜
- 根
- 小米
- 粒
- UID
- 229363
- 注册时间
- 2016-6-23
- 最后登录
- 1970-1-1
- 在线时间
- 小时
- 好友
- 收听
- 听众
- 日志
- 相册
- 帖子
- 主题
- 分享
- 精华
 分享帖子到朋友圈
|
本楼: |
👍
100% (23)
|
|
0% (0)
👎
|
全局: |
👍 99% (104) |
|
0% (1) 👎 |
注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看,没有帐号?注册账号
x
去年12月底拿到的offer,勉强算是完成了自己2020年转码的任务。看到地里还有不少兄弟姐妹还在努力中,特此献上一些自己的经验,也给同学们打打气!转码要比想象的简单!
先介绍一下我的背景
EE master毕业。毕业后来到湾区,先是在一家硬件公司做test engineer,之后去了两家软件公司做systems engineer和performance engineer。工作中会写一些代码做软硬件测试和性能分析。在做performance engineer时,因为公司战略变化,开始做 public cloud 相关的东西。之前跳槽去软件公司做硬件相关,也算是自己职业规划的一部分。当时觉得硬件直接转码比较难,所以走了一条曲线转码的路。
转码面试的战果
8月份开始全面备战(刷题)。10月底开始投简历,算上内推,总共投了15份简历,收到5个interview,4个technical phone interview,2个onsite,最后2个offer。
总体来讲是比较顺利的。我是在自己感觉刷题刷的差不多了之后,想着先投几个公司练练手,没想到第二天就有面试来了,更是完全没有想到收获了offer。
转码的历程
主要做了以下几项工作
下面就分别说说自己对每一项的看法和理解. 1point3acres
上培训班
TL;DR – 对于在职,且没时间,且有决心,且不缺那些钱的朋友,我推荐上课;对于不满足上述条件的朋友,我觉得上课不是必要的。
我是2019年上的培训班,后来因为一些工作上的原因,没有一上完课就开始找软件工作。但是上课所学的东西对我来讲还是极有帮助的。为了避免广告嫌疑,就不说是哪一家了。
下面我就列出一些我自己认为的pros和cons
Pros:
- 花钱了,心痛,所以决心一定好好学。。。同理可推得—— 花钱买刷题网会员,心痛,所以决心一定好好刷题;花钱买了Jetbrains全家桶,心痛,所以决心一定好好做项目。。。
- 短时间学会大量常考的算法。老师直接灌输给你,省去了很多时间。
- 学会如何在面试中回答算法题
- 迅速掌握Java(据说是面试最好用的语言)
-baidu 1point3acres
Cons:
- 当然是贵了
- 因为是一剂速效猛药,所以基础肯定比不上科班出身。还是需要看些书去补补的。
- 其实上课与不上课最大的不同在于“有效信息的检索和甄别”的效率。上培训班的朋友,有老师帮忙完成了所有信息的整合,完全不用花额外的时间,直接学,直接当正确答案最优解就好。自学的朋友则需要花费大量的时间去找各种资源,之后还要分析看看找到的答案对不对。当然,筛选有效信息的能力是在工作中非常重要的,所以这种经验的积累是自学的朋友获得的额外bonus。 对于我本人来说,每天疲于工作,所以还是上课效率高一些。
刷题
TL;DR – 高度自律,每天刷;刷高频,反复刷高频,反反复复用各种解法刷高频。
个人认为完全没有必要做完刷题网的1500+ 题目,因为绝大部分都不是常考的,或者只是给旧题换了一个新马甲。我只刷了题号前400和高频300。要刷高频的话,刷题网会员是免不了,就算是转码道路上的一点点小投资吧。
我觉得刷题还是有些点需要说明的
- 刷题不是背题,更不是背答案。重点是理解和思路。
- 要总结各个题型的思路。
- 用不同的解法刷。一道题用n种解法做,就等于做了n道题
- 刷高频。
- 深研答案。刷题网有些答案写的和小论文似的,还是可以学到很多东西的。
- 高度自律,每天刷。让自己保持状态,让各种常见解题思路形成条件反射。这样在面试的时候可以迅速找到较好的解法。
- 尽可能的beat 90%+
有朋友可能会问每天刷多少合适,下面说说我的刷题计划
- 范围:题号1-400,和高频前300
- 题量:每周100题。周一到周五每天20道,如果是不会做的hard新题,可以跳过,剩下的必须当天做完。周六周天专门用来解决之前不会的hard和一些之前做起来困难的题目。这种量非常大的做法一开始会非常吃力,可能8-10个小时才能做完20道,其主要原因还是算法和语言的不熟练,做几天熟练了之后就会有很大改善。我最开始要8-10个小时,两周之后就缩减到了4-5个小时,最后一般2-3个小时就可以刷完每天都任务量。拿到offer之后,看了一下刷题网统计数据,准备的四个月一共有2600+的submission,平均就是一天20左右,差不多是符合预期计划。
- 处理生活中的Interrupt:大家每天工作生活,总有些事情会打断我们的计划。比如出去旅游,出差,都会打断我们的刷题计划。好的解决方案是换种方法刷 —— 刷做过的题,而且只刷思路,不写代码,不求细节。这样在手机上花上20-30分钟就可以让自己保持状态。
做personal project
TL;DR – 对有相关经验的朋友,项目是真的可有可无;对绝对零经验的朋友,项目应该还是有用的。
我在准备转码的过程中做了几个个人项目,并且放到了简历上。但是面试过程中从来没被问到过这几个项目。最近想了想,原因很明显,我之前的经历虽然不是software engineer,但是有大量相关的experience,比如写测试代码,软件性能调试,docker,K8S 等等。与工作经验比起来我的个人项目太过简单,反而浪费了大量resume的篇幅。但是做personal project 也并非一无是处,下面是我的一些想法,大家可以自己trade off-baidu 1point3acres
Pros:
- 熟悉语言 。熟悉刷题以外的语言特性。
- 对OOD和system design有更深的理解
- 如果完全没有任何相关工作经验,这是最好且唯一展示自己software能力的机会
Cons:
- 花费时间。做项目会占用一些本可以用来刷题的时间。
- 做项目所学的东西可能以后并用不上。
- 如果项目太简单,写到resume上可能会浪费篇幅。
- 对于我来讲,总体上Cons大于Pros。所以自认为浪费了不少时间在个人项目上。
当然,如果可以做出很牛逼很复杂的项目,那绝对是完美的加分项。但是,前提是你要能回答面试官所有针对你项目的问题。
System Design
System Design现在已经基本默认为必考科目了,尤其是想直接转码到senior level的同学。我在这方面也不强,这里只能给大家说说准备用的资料了
Grokking System Design- 经典资料了,地里可以搜到这个教材。但是说实话不够用,只能算是入门材料。对于入门材料,当然是要必须完全掌握了。
YouTube channel- https://www.youtube.com/channel/UC9vLsnF6QPYuH51njmIooCQ 这位大哥讲的确实是不错 ,视频不多但是挺精的。
Mock Interview
一定要Mock!因为interview中做题和刷题的心态是完全不同的,Mock interview可以帮你最快的找出自己的短板!大家最好找做过面试官的朋友来帮忙Mock。
系统设计也要Mock,因为对于我们转专业的同学来说,系统设计存在了大量的unknown unknown。如果没有专业的同学帮忙的话,我们很难看到盲区。
看面经
TL;DR – 地里的面经板块就是神一般的存在!
看面经肯定是有用的。原因很简单,面试官出的题一定是他自身非常熟悉的题目,换句话说就是此题的各种解法他都了然于胸。试问一个面试官能准备多少种这样的题目?一般的中小型公司又有多少面试官?所以对于中小型公司,面试中面经基本上是必然的;对于大型公司,就要看面经题库的量了(靠大家贡献了)。
面经的使用也很简单,面试前几天把面经反复刷一刷就好了。
面试
面试也没什么特别的技巧,我就总结一些常规的
- Algorithm面试:不要一上来就开始写。先问清constraints和corner case,再给面试官讲自己的思路和一些可能遇见的陷阱及解决方案,得到面试官的肯定之后在开始写代码。当然写完后要主动检查代码,起码要表现出自己做sanity check
- 题目不会怎么办:不会不要慌。先说出自己能想到的最好的思路,问面试官觉得怎么样,这时面试官肯定会给一些优化的hint。这些hint一般会把一道hard难度的题秒变成medium难度。
- System Design面试:最重要的就是把面试官当成同事,把面试当成开会讨论问题。主动提出自己设计的优缺点,还有自己怎么做trade off。我这方面也比较弱,大家还是多看看上面分享的YouTube channel
- Behavioral Question面试:这部分永远是准备大于临场发挥。给大家一个必备的问题清单。我的建议是把问题的回答写下来,面试前背过。
- Self introduction- 必问题。对于转码的我们来说,当然能往software上靠就尽量靠。最好可以准备前两份工作的经历
- 为什么要来我们公司- 必问题。按公司特点准备,具体回答仁者见仁了。我觉得面试官就想要一个答案,从而证明你做功课了,也确实对公司感兴趣。
- 为什么想换工作- 必问题。
- 你的优点,或者说能为团队带来什么- 常见答案有think out of box之类的,最重要的是要讲(编)一个好故事
- 讲一个challenge,还有你怎么战胜这个challenge - 最重要的是要讲(编)一个好故事
- 如何解决conflicts- 主旨就是咱不惹事,有事了就积极解决;分歧在所难免,但是团队合作最重要。最好可以编些故事。
. check 1point3acres for more.
大家针对转码有什么问题可以留言,我看到也会第一时间解答。最后祝转码的兄弟姐妹们牛年牛气冲天,都拿到offer转码成功!
|
评分
-
查看全部评分
上一篇: 40岁中年大妈转码?可行吗?求锤醒!下一篇: 有两个美国小厂实习有必要吗?
|