码农类General 实习
硕士+(短暂实习或全职不超过3个月)
[1]
积分不足,查看如何攒积分 或
解锁阅读权限 Other @
amazon
BayArea湾区
在这家公司工作了多久: <3months | 你还在这家公司吗: Intern/Not Full time employee
==== 综合评价: ★★★★★ ====
你对公司商业前景有信心吗 : Yes
你觉得有清晰的发展空间吗 : Yes
WLB-平均每周工作多久 : 60-80hours
上次refresh多少钱 : NA
公司食堂 : No free food, no easy access to paid food
人员流动-你的director组内最近半年有多少人离职 : <5%
周围做决定的人一般是谁 : Engineer
大部分同事上班状态 : Hardworking, burn the midnight oil if necessary
你身边政治斗争如何 : Barely any
当初为什么选择来这家公司? : 唯一的实习offer
如果已经离开这家公司,为什么选择离开? : 实习结束
具体工作,组,tech stack等 : Java, TypeScript, AWS
最满意的是什么 :helpful manager, peers.
最不满意的是什么 : overhead of communicating remotely
你对这份工作最看重什么 :growth
注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号
x
看到地里有其他♂朋♂友介绍在亚麻实习的经历,为了给大家增加data point,小弟也上来写点。
本人去了Amazon.com的组,主要是利用亚麻已有的推荐系统来引流。技术主要以Java 为主,写的app用Docker封装,然后放在AWS上面运行和管理。
实习第一周基本上用在了setup上面,由于本人转专业选手,很多tool完全没概念,只能按照new hire bootcamp上的一步一步学,依葫芦画瓢。第一周的周三其实mentor和manager就带我看了project 文档,然而并没有看懂...一方面是我水平有限,另一方面是我的项目是组里大项目的一个分支:由于大的项目当时还有很多细节没有敲定,所以我也不知道该implement什么东西。到了第二周的周二,我都还没有正式开始写代码,搞得我的manager都着急了。于是乎,我mentor当机立断让我设计原定project的后半部分。紧接着我花了一个周末,搞了一个design doc,虽然不是很正式,但是mentor还比较满意,于是带着我修改了一番就开了一个design review。会上还没怎么介绍就被组里的senior提出的一个想法直接“毙”了。当时有点慌,因为已经到第三周了,design还没定下来,我就不能正式写代码(做design的时候写过一些实验性质的代码,但肯定不能用来发code review)。不过mentor超级好,他跟我解释到他事先也没和senior沟通好所以才出了这个插曲。于是隔了一周,我又revise了design,终于的第四周敲定了方案。
紧接着就是写代码。首先是在组里已经有的package上面加新的API,这个不算特别难,因为可以参考其他人的implementation。最重要的是熟悉和模仿他们的代码风格(比如,我们组的人特别喜欢用stream...和 Optional 这些我在刷题时都没用过的东西)。终于,在周四的周五,我总算发出了第一个CR (code review). 后来让我感到吃力的事情是做integration test,最开始不知道怎么读log,所以遇到bug全靠猜。然后每跑一次测试都要花好几分钟,所以debug非常不效率。后来还是问了我mentor以及组里另外一个engineer才搞明白了怎么看log,怎么分析问题出在哪里。我也感谢这段debug的经历,让我对整个service已经它背后的database有了了解,以至于后来被manager问到demo的时候,我急中生智用integration test里面的代码来加入mock data,然后再用mock data来demo了我的API。(否则,我可能要另外花好几个小时单独去写个包然后各种调参才能和数据库沟通了...) 加新API的过程中,我也不断发现了以往代码的一些局限性,所以也对此做了很多refactor。
Integration test做完了以后,之前组里面还没敲定的方案基本也敲定了,所以我又回头做project的前半部分。也是在这时,我才接触到了CDK, cloud formation, CloudWatch这些东西,Again,我还是依葫芦画瓢,照着组里已有的implementation 模仿,然后再google,stack overflow。不过这一次麻烦的地方在于,我要用到一些亚麻内部的工具,然而感觉这些内部工具的wiki并不是特别newbie-friendly,于是我硬着头皮reverse engineering我能在code base里面找到的类似的代码(最后主要还是靠mentor之前写过的东西),运气比较好,在我不怎么懂原理的情况下,我的implementation也work了(这可能就是 bias for action 吧?)。
最后一段时间我基本已经熟悉了一些常见的debug 套路,也给组里的package的readme加了一些trouble shooting的session。收尾准备present的时候遇到了几个大bug,怎么搞都搞不定,最后还是mentor带着我一步一步改好了,不过原因也是组里的同事改了其他package的一些参数结果忘了告诉我...导致我以前work的东西被break了。
我是倒数第二周present的,整个过程很smooth,我的ppt也尽可能做得non-technical staff friendly,PM看了都说好,哈哈哈。组里的同事也很给力,除了我mentor以外,还有两个同事都事先帮我看了ppt,给我提了很多有用的建议,尤其是Q&A 环节。不过真的到了Q&A环节,组里的人也没有为难我,都没问hard question。我的manage也在实习最后一天才告诉我我有了return offer。不过后来想想,有没有return这种事情,跟♂谈恋爱♂有点类似,能不能成,凭感觉,就算不表白,也能猜个八九不离十了。
总的来说,实习挺累的,我曾经累的坐着都双腿发软,周末要狂睡才能补回来。不过组里的人特别好,manager特别照顾我,每周跟我1 on 1,鼓励我跟其他成员沟通,有一次他让我去找PM聊聊我的design,结果我为了更好的展示给PM所以一直在拖时间慢慢做ppt,然而我拖了太久,后来manager干脆让PM主动来找我meeting...我的mentor也很好,我做的所有东西都是他精通的,每次我实在搞不定的问题,他都能提供正确的思路,我写的代码出现逻辑上的问题,他都能一针见血地指出来。如果他是如来佛,我就是他手里的一只小毛猴!其他组员也helpful,比如组里的国人女生就对我也很好,我compile时如果遇到奇怪的bug也会像她请教,她都知无不言。我的组非常diverse,有美国人,有印度人,中国人,德国人,巴西人,日本人,伊朗人。A little world!! 总之,虽然实习真的很累,但我很喜欢我的组,我觉得我能得到support,我身边有很多优秀的工程师可以帮助我不断地进步。
实习无常,还记得去年暑假地里有过好几篇关于亚麻实习的悲伤故事,我在入职之前也曾为此忐忑不安。我由衷地希望所有的因为各种倒霉没有拿到return的朋友们找到更好的去处,此处不留爷自有留爷处。实际上,我觉得好的manager,好的mentor,好的peers真的对intern太重要了!如果只是甩给intern一些组里也不清楚的东西去做,导致在intern 被block的时候,不能提供有效的帮助,这就会让intern的learning curve非常陡,甚至有无法deliver result的风险。个人愚见,这不是一种负责的mentoring。
最后感谢组里成员们的支持和帮助,我必须继学习,未来的某一天我也要carry我的mentee。
补充内容 (2020-8-4 07:54):
不是“周四的周五”,应该是第四周的周五,😂
补充内容 (2020-8-4 09:18):
组里虽然忙,但是大家都不会在下班时间(晚上5点或者6点)在组里发问题,即便加班也是默默做,不去打扰其他人,更不煽动加班氛围,manager也经常在5点半对全组宣布他下班了,不干活了。
补充内容 (2020-8-5 02:09):
实在不好意思,那个“WLB-平均每周工作多久: 60-80hours”是我自己的数据。具体来说是因为我不是时间管理大师(literally),所以在电脑面前赖着赖着就过了一天,周末有时候得花时间研究组里技术的原理,so...
补充内容 (2020-8-5 02:11):
我再算了算,组里面最忙的SDEII,一周也就50小时顶破天了
上一篇:
亚麻良好virtual实习体验 下一篇:
金融公司实习吐槽,不吐不快