|
|
|
|
|
|
d***u 发帖数: 1 | 1 今年三月决定转码,因转码较晚和疫情影响,错过投递美国SDE实习的时间,转投国内
,现已拿到某大厂Java后端开发校招offer。转码过程较特殊,我个人觉得有点幸存者
偏差,不过抛开幸运的成分还是想把这几个月对Java面试做的准备和转码心得分享出来
,希望能对想试试国内开发岗但不了解国内面试or转码or想做Java的同学有所帮助。
主要会从四个方面来给大家分享:个人背景介绍,前期准备,Java岗面试准备,以及转
码心得。
本篇分享的是个人背景和前期准备。
一、 个人背景介绍
个人背景
本科是美本某商学院的信息系统专业,一半水Tech一半商科。选IS是因为被我们院的
Excel课吸引了TAT,觉得敲键盘还挺有意思,加上对传统商科兴趣不大,所以选了商学
院最技术的专业。
现在是某计算机大校统计专业研二在读。转专业学统计是大三暑假被大数据浪潮洗脑,
想要做DS。学了大半年越发觉得Data工作不适合自己,今年三月决定转码。
非常规(狗屎运)的转码时间线
决定转码后三月中下旬开始投国内C++开发实习岗。因准备仓促和计算机基础弱,面试
和笔试都挂了很多,最后决定读个CS二硕,曲线救国。六月回国后在家自学Java相关知
识,为明年统计硕士毕业找国内暑期实习做准备(不想浪费opt)。八月底本来是打算
投一份日常实习积累文书素材。当时正值秋招,误打误撞投了一家我以为是实习的全职
,几轮技术面顺利通过拿到offer。(后来发现是内推人误以为我是想入职前去实习所
以告诉我可以实习)在家摸鱼一个月后担心正式入职后太菜,抱着试试看的心态面试了
某厂的Java日常实习,也顺利面过。两个月实习期间,发现后端开发确实是目前的我很
适合也很喜欢的工作。
决定转码和不做DS的原因
首先是统计基础菜,上网查统计资料看见各种公式和符号我就晕菜。相对而言,虽然本
科学的编程不深,但是编程基础还是有的,学习新的计算机知识我也能很快get和上手
应用。下定决心的契机是上学期一个人carry全组数据库课的Final Project(组员还都
是CS专业的),在零Web经验情况下用一周建了一个全栈网站,并且拿了满分。个人性
格来说,相比Analyze和说服别人Make Impact,更喜欢Build带来的成就感。最后是找
工因素,个人觉得,对于转专业选手来说,SDE面试其实比DS面试好准备,以及岗位多。
我的CS和数学基础
本科在商学院学过Python,Java,C#, SQL,HTML,和 CSS。考试不考代码只考选择题
的难度。研究生上了两门CS系的课,一个是用C++上的硬核数据结构算法课,另一个是
数据库。数学的话,本科学了微积分123和线性代数。
二、 前期准备
选择一门编程语言
如果你想投递国内开发岗,先选择一门编程语言。第一是你做算法题面试官会Expect你
用面试岗位的语言写,毕竟招你就是去写那个语言的。我当时面C++,用Python写题被
面试官小小嫌弃了一番。第二是你选择的编程语言不同,面试内容就会不一样。比如C+
+岗就不会考Java虚拟机。第三是为工作做准备,虽然说有概率你面试的语言和工作用
的语言不同,但是总体来说还是一致的。
我知道很多人是用Python做题,比起Java还要申明变量类型真的简单了很多,不过国内
Python岗确实没有Java岗位多,加上我本科学过一学期Java,算是有基础,所以选择
Java作为面试语言。至于没有选择C++,是因为我害怕指针和内存泄漏哈哈。
丰富项目
选好编程语言后,需要做几个与之相关的CS项目作为你找工作的敲门砖。做Java开发必
不可少的就是Spring全家桶。Udemy和慕课网上有很多SpringBoot的项目教程,选评分
高的。我建议大家跟着视频来做,初学者往往搭环境就会遇到很多困难容易产生挫败感
,有人手把手教你也会有信心一点。学的时候先达到会使用的目的,不要深究原理。
心态上要注意的一点是,不用过度在意照着教程做的项目会不会含金量不高。在面试官
眼中,就算你个人觉得再厉害的项目,他们也很有可能会觉得是Toy Project。关键在
于你简历里有SpringBoot这类关键词的经历,让你先敲开第一扇门。可能一开始过不了
大厂简历关,但你可以利用这些项目经历去敲开小厂的门,再利用小厂的实习经历最终
敲开大厂的门。没有人是一开始就无比厉害的,都是通过“我现在有什么就利用什么”
一步步达到目标的。所以,立刻行动起来!
简历Tips
如何写简历其他帖子有很详细说,我这里就不细讲啦。这里我讲几个写简历和应对简历
提问的Tips:
1.不要夸大技术栈:国内我每次面试,简历提问占了40%的时间。不要夸大技术栈是指
,比如你只是了解Java并发,最好就不要写熟悉。你写在简历上的每个技术点都有可能
被面试官问到,还被问得底朝天的那种。当然面试官也不会故意刁难你,问到的都会是
你在简历中明确写到的技术。问到不会的技术说自己没接触过就行。转码同学看到面经
上很难且出现频率低的问题也不要担心,很大可能是别人实习项目经历里的点,是不会
问你的。
2.写求职意向:因为转专业同学相关经历就不多,如果没有明确写上”Java开发 “,
可能会让招聘的人有不知道你在投哪个岗位的疑惑。
3.写国内手机号:国内的人联系你大概率是打你电话,记得简历写国内手机号,给国内
手机号开国际漫游,考虑到时差问题最好晚上手机也不要关机。如果因为没接到电话而
错过面试机会就太亏啦。
4.熟悉每一段经历,包括非CS经历:我第一次面试时被问到机器学习的项目答得挺不好
的,那时我以为面试官只会问我CS项目,就没好好准备其他经历。简历上每一段经历都
得背得滚瓜烂熟,不管跟CS有没有关系。面试官主要是想通过你过往的经历看你的潜力
,知识的掌握,和对知识的追求。
5.给每一段经历一个人设:如果你的项目跟CS没关系或者没什么技术难点,你可以在介
绍时体现你别的方面。我一共有三个项目:仿照Spring三大原理实现的简陋版Spring框
架体现的是我学以致用,愿意钻研原理的热情;数据库Final Project体现的是我快速
学习新知识和时间管理的能力;机器学习项目体现的是我团队合作的能力。每一段经历
都是一个故事,你通过这个故事告诉面试官你是什么样子的。面试官不仅是在考察你的
技术能力,同时也是在考察你这个人本身,你是否会是他们愿意共事的同事。
6.练习中文面试: 这点很容易被大家忽视,在正式面试前一定找朋友Mock一次。因为
你会发现太久没在正式场合说中文,面试时自我介绍都会有点烫嘴。
刷题
这一点我没有什么发言权,因为我只刷了100道题。除了有次面试一上来问我一道Hard
,我立刻挂掉外,其他面试都没有问我算法题。我个人觉得把剑指offer,Leetcode
Easy 和 Medium的100道重点题目刷熟练,应对笔试和面试的算法题是没有问题的。一
个提醒是在笔试前大家记得在牛客网上熟悉输入输出,不要因为不熟悉格式浪费太多时
间。至于怎么刷题具体可以参考别人的帖子!
把握好国内招聘时间线
为了避免错过国内招聘,可以时刻关注想去公司的公众号。国内暑假实习招人是3月份
开始,有些公司的组会在2月份不走系统提前招人,等于你可以面同家公司的不同组,
还没有投递限制,并且还不需要笔试(可能最后让你补一个笔试),这对刷题不足的同
学其实是好的机会。正式开始后会有内推提前批和官网投递两次机会。国内内推还是很
给力的,如果背景不是太差都会进入招聘流程。国内秋招提前批是7月开始,也就是说
你在暑假实习期间就得开始关注秋招了。
跟在美国找工一样,招聘窗口一开,都是越早投递越好。不要觉得没准备好就迟迟不投
。有可能你没准备好的东西根本没被考。我经历的国内面试可以分为三类,一类是纯考
算法,一类是问基础的计算机问题,一类是场景题。比如你一直在准备美国面试,只刷
了算法题,基础知识完全没看,那第一类面试你也是能够轻松应对的。如果没有复习好
基础知识,你多面试几次就会知道问你的问题都大同小异,也能找到日后复习的方向。
如果你一直没有踏出第一步,自然是不会有成功的。
如何拿面试
跟在美国一样,能找内推就不海投。国内内推是需要内推人的内推码或者是内推链接。
我知道的国内内推渠道主要有:
1.牛客网上会有很多公司员工发内推码,如果你有明确想去的公司部门,记得找在那个
部门员工的内推码,我也是后来才知道内推人所在的组会是你以后工作的组
2.如果你不想自己去牛客网搜内推码,恰好你背景也比较大佬,可以去Boss直聘看看。
光是填写个人院校信息都可能会有很多大厂员工来问你要不要投递,然后给你发内推链接
3.LinkedIn 和在美国求内推一个道理
4.微信群 听我陆本同学说国内学校的微信群里会有学长学姐发内推码,这个也可以关
注下
5.其他社交网站如知乎,微博等都可以私信求内推
如果是找日常实习,这种实习都是组里面突然缺人,岗位也不会挂在官网上,也没有内
推码。建议在Boss上主动Reach Out。Boss上发布招人信息的人大部分是搞技术的人,
如果你能针对他发布的JD关键字,写一两段自我介绍和技术栈总结给他,体现自己符合
这个岗位,亲测回复率在50%。我的日常实习也是通过这个方式拿到面试的。相反,不
建议在实习僧上投递,因为实习僧只会看到你的简历,缺乏和人沟通的环节,很有可能
因为专业不是CS或者简历看上去不够CS而被HR筛掉。 |
|
|
|
|
|