忙活了3个多月,发现找工作是个很复杂的事情,至少对于我是这样。有些感受写下来,给师弟师妹或者其他同行的朋友当个借鉴,或许会有帮助。但这只是我自己的想法,大家要筛着看。同时欢迎大家一起讨论,共同进步。
自我介绍一下,本人哈工大软件学院05级小本。技术特点:没啥特点。个人表达能力还好,性格开朗,喜好英语。
恩,开始吧。
我想大家在找工作之前可能都会给自己定一个目标,或者范围。比如游戏行业,通讯行业,互联网等等。这样很好,有的放矢才能增加命中率。况且很多情况下,不同行业的企业对技术的要求是不同的。而我呢?我给自己定的目标是——外企。
这个目标定得就很失败。首先今年全球经济危机,遭殃的首先是外企,各大外企纷纷裁员或者缩减招新名额,这样的形势下进外企,挺难;其次,IT领域中的外企大多是世界牛企,不是那么容易进的;再次,IT领域的外企也同样分布在各个行业,就像之前提到的。例如微软,intel,阿朗同样是IT领域的外企,但是行业不同,对人才要求就各不相同,没有一个明确的行业目标,使得我的求职之路显得很盲从。
我感觉自己不是个技术牛人,也觉得自己并不适合做技术,其实我想做管理,但是我知道,就算以后想做管理,也得从技术入门,所以在招聘大幕拉开之前,我就开始了自己的技术突击计划。计算机涉及的知识实在是太广泛了,想面面俱到基本不可能,不同行业的公司要求不同,但是也会有些共同之处。我个人的总结就是,要抓住“两个中心,三个基本点”。“两个中心”是以数据结构与算法为中心。对于计算机专业的人才来说,数据结构,算法应该是基石,也就是重中之重。这一点在牛企中更为突出,像百度,微软,google这样的企业,对这“两个中心”的要求更是高。据说一个牛人为了去google,把一本算法经典书反反复复看了10多遍。其重要程度可见一斑。“三个基本点”分别为程序设计语言,数据库,网络。软件工程师最终还是得写代码,所以精通一门语言可以说是基本功。这里可能又会有java与c++的门派之争了。到底哪个语言“更好”,不同的人有不同的说法,我的感觉就是无所谓。这么说确实不准确,但是我觉得到底是什么语言真的不是很重要,至少不会起决定性作用。我见过的笔试面试题中,算法题基本上都会告诉你用任何语言均可。但有一点很重要,就是无论是java或者c++,你都要精通,也就是说要非常熟练,这就得花工夫了。数据库跟网络我本人并未深入了解,只是知道一些最基本最核心的知识,我感觉这样就足够了,除非你应聘的公司对这方面有特殊的要求,或者你应聘的职位有特殊要求。再有一点值得提的就是外语,进外企还是需要外语的,而且还是偏重实际应用,这一点在intel的面试中我体会得有其深刻,还好本人平时有些练习,所以我觉得英语这关对我来说不算太大的问题,记得以前我也写过一个学习英语心得的东西,有兴趣的朋友可以看一下。
下面我就说说一些面试感受吧。
刚开始的时候,没有面试经验,所以只要有一个公司过来,无论是不是我想去的公司我都投简历,然后笔试面试,最后要不要我我都无所谓,反正也没想去,呵呵,这样的心理我觉得是很多同学的普遍心理,就是想多赚点笔试面试经验,起初收获还很多,确实能够学到些经验的东西,但是到了后来就完全是浪费时间了,因为很多公司的面试都是千篇一律,而且有些公司的面试官本身就是水平有限,问的问题很低级,这样的笔试面试也只能说是浪费时间了。所以后来我就挑重点了,完全不感兴趣的公司就不投,也免得浪费我的时间,也浪费用人单位的时间了。
这3个月,大大小小的面试也有几十个了,下面我挑几个重点说说(我准备跟大家分享一下腾讯,intel,微软,阿尔卡特朗讯,诺基亚西门子的面试经验),只说这几个公司,是因为这几个公司都比较有代表性,分别是不同领域的很不错的公司。希望能够对有志于这些公司的同学以及朋友有稍许的借鉴价值吧。
一,腾讯:
平心而论,这个公司是个好地方。企业文化,公司发展前景我都很看好,虽然不是外企,但是还是蛮希望能进的。腾讯是我经历的第一个很正规的面试,进面试也觉得很兴奋,但是有些时候,成功需要运气,说白了就是“命”。腾讯给我打电话通知面试的时候我正在笔试微软,没敢接,考完了打回去没人接,亲自到华融饭店跑了一趟,说给安排到明天了(其实当天就有一些人面试了,第一天安排面试的人少,所以每个人面试的时间很充裕,第二天安排了200多人面试,一个人只有半小时时间,所以没能在第一天面试很亏)。第二天很兴奋的提前半小时到面试场地,填完表格之后就去见面试官了,面试官人很nice,没有架子,非常和蔼,加之之前有一些面试经验,所以心里还是蛮有信心的。我投的职位是java工程师,但是万万没想到,这位面试官给我出的第一道题竟然是写一段html代码,要用上css,实现一个美化了的登陆框! 我kao,这不是玩我么?写html?我没听错吧!当时脑袋一晕,但是暗暗告诉自己要镇定镇定(现在想想很可笑,应该直接问问面试官自己申请的是java工程师,而不是用户界面设计师),于是我就在那硬着头皮写,结果可想而知。后来我才知道面试我的那个部门是招前台工程师的,天哪!!!
其实这个面试很衰,呵呵,不过我的感觉就是腾讯是个注重技术的地方,因为公司的业务很广泛,所以对各种人才都有需求,面试的气氛会很轻松,我想这个跟公司的企业文化有很大的关系,我听一个真正面了java工程师的研二师兄说(这个师兄就是第一天去面的),面试官主要就是问算法题,就是硬基本功。所以腾讯是个对技术要求很高的地方。再说个很搞笑的事,听了之后我就觉得我不是最衰的,另一个研二的师兄,他也是第一天面的腾讯java工程师,结果面试官一点java都没问他,这师兄比我聪明,就问面试官是不是搞错了,我报的职位是java工程师,怎么都不问我java呢?面试官很正经的说“哦,没搞错,我们的java工程师不用java”,当时我那师兄就喷血了。哈哈。
二,intel:
这个面试机会来得有些不容易,记得是跟一个电气学院的女硕士师姐去松下电器体检的时候聊天才知道intel已经发面试通知了,而那时候intel还没来开宣讲,这让我很措手不及,因为我还没投简历,之前以为intel不招软件工程师,但后来听说官方上说招软件工程师,再加上intel是外企,呵呵,所以心里不想放过这个机会,不过现在投简历已经晚了,于是盘算宣讲会后跟面试官争取各面试机会,intel宣讲当天同时有好几个公司开宣讲,有的甚至直接笔试,犹豫了好久才决定放弃那几个去intel争取一下!到宣讲会现场的时候宣讲已经开始了,但是450却没坐满一半,这很奇怪,平常在450开宣讲的公司通常都爆满,今天是intel却这么少人,而且还有人陆续往外走,坐下才发现,宣讲的是美国人,美语那个纯正啊,突然我觉得很兴奋,嘿嘿,看来学英语还是很正确地!走的同学看来是听得头疼了,提问环节有人就问面试可不可以用汉语,答曰不可以,全部英语。这时就有人说想放弃了,不去面试了,宣讲结束了我赶紧冲上去了,围着宣讲那个人叽哩哇啦的一大堆,他说我英语不错,但是还得回去仔细看我简历才能决定是否能给我面试机会,我这个心里没底啊,不过毕竟自己也是争取了,也没啥遗憾了,第二天一大早我就去正心自习去了(找工作期间我一直看书充实自己),突然接到了intel的面试通知的电话,叫我去哈特等,因为我是后插入的,所以得等面试官时间有空隙的时候才能面试我,我就拿着我的thinking in java 屁颠屁颠的去了,到了之后跟一个同样等面试的不知道哪个学校的计算机硕士聊天,他很有架势的告诉我,这是个好机会,intel刚刚在大连建厂需要人才@%&*@&*%等等,他正说的起劲,就被叫进去面试了,谁知道刚进去5分钟就出来了,满脸通红,满头大汗,然后那个面试官陪他出来一直拍着他肩膀说“that’s ok. That’s ok”,我才明白,原来这个哥们英语不行,跟面试官互相没法沟通,直到这个时候我才发现,如果想去外企工作的话,英语真的是very important啊!之后就是我了,进去之后发现是2个面试官,一个是我昨晚聊天的美国人,另一个是中国人,不过面试还是用英语进行。Intel的面试跟别的公司差别很大,除了是全英文的以外,还有就是他毕竟是个硬件为主的公司,对软件人才要求会比较不同,整个面试都没有问我数据结构与算法的东西,也没有给我出个题目让我写程序解答(只是让我写了一个简单的sql语句),不过整个面试比较侧重于考查应试者解决实际问题的能力,他会问你个问题,然后听你是怎么解决它,比如他问我就是有一个复杂的软件系统,突然不知道为什么就停止运转了,该如何解决。其实这样的问题并不是很难,但是用英语回答就不一样了,所以我再次强烈建议有志于进外企的同学,好好练口语跟听力,还是那句话very important。
三,微软:
这个面试来得很意外,记得接到面试通知的时候我还在笔试一个游戏公司,一听是微软,我马上就交卷不答了(有些冲动,呵呵),其实从开始到最后我只是把这次面试看成一次难得的“见世面”的机会而已,根本就没抱任何幻想(我还是很有自知之明地),不过我还是很认真的准备了一番,也算是对微软的尊重。说到这我不得不提一下,微软不愧是软件的老大,它的面试是我所见过最正规最受益的,我觉得是一次难得的学习机会,所以我还是很感激。(微软还包销往返北京的机票跟酒店,呵呵)。于是马上开始数据结构,算法的疯狂复习中(看了微软的《编程之美——微软技术面试心得》,受益匪浅)……
好了,进入正题,因为面试是上午10点开始,所以我提前一天到北京,住在了亲爱的同学那。第二天一大早便起床出发。心里很紧张,在等待面试的时候,遇到了一个华中科大的同样面试的同学,简单聊几句,觉得这个人貌似很牛,不禁失去了一些信心,哎。插一句,微软前台接待的mm很漂亮,呵呵。
面试开始了,我的第一位面试官是一位年轻潇洒的帅小伙,让我很是意外,原来搞技术的人也不都是书呆子类型的哦。他好像有些严肃,手里拿着一台IBM的本本,坐在我对面一直的敲,问我问题的时候也在敲,我回答问题的时候也在敲…….不知道在写什么东西。首先让我来个自我介绍,然后问我为什么申请PM,对PM这个职位的理解,觉得自己有什么优势等等,之后又问了我一些项目管理方面的东西,这部分的东西比较中规中矩,我也准备了一些,所以说的还算条理清楚。然后他说“好了,现在看看你英语水平怎么样,你用英语跟我说说你来北京的路上的见闻吧”,然后我就%@&$的说了一通,觉得有些紧张,说的不是很好。最后他冷笑了一下,就像个剑客用他的绝招要置敌人于死地一样,说“最后我们写写程序吧”,我早就料到了,之前看微软的面经都有提到,微软的面试都需要现场写程序。我的第一个程序题目是这样的“写一个程序,计算链表的长度”。我当时心里就乐开了花,这么简单!~哈哈,高兴啊,提笔就写,孰不知,我提笔就写的那一刹那,这个问题我就是肯定答不对了,至少肯定不会答得完美了,其实我觉得微软的面试好,就好在很多问题表面上看是很简单的,但是微软的人会给你发掘到简单问题的不简单的一面,就比如这个简单的链表问题,面试官只是说写一个计算链表长度的程序,但是他并没有说是什么样的链表,对这个程序的输入输出有什么要求,所以最理想的表现应该是在答题之前先思考,你应该主动问面试官,要写的这个程序的输入输出有什么要求,这个链表可以是循环链表或者双向链表么,等等,其实微软的面试官并不是真的想看看你会不会操纵链表,他们想看的是你是否有一个严密的思考问题的思维,而这种思维是做一个优秀的软件工程师所必需的。就像我说的,我没有考虑任何问题,提笔就写,我写程序的时候,面试官一直都没抬头的敲打电脑,也不知道在写什么东西。写完了之后,我又好好的检查了一遍,生怕出任何差错,确定完全正确之后,我跟面试官说写完了,结果面试官只抬头看了一眼就说“你看看你写的程序有没有什么问题”,然后又低头继续敲电脑。我当时就乱了,因为我确定这个程序没问题,他看我有些迷茫,就说“你看看你的程序有没有什么漏洞,比如是可以让别人攻击你程序的漏洞”,还好我及时发现了我用的判断循环条件是for(;p->next!=null;p=p->next),如果输入的链表是个循环链表的话,这个程序就是个死循环了,我突然发现自己就像一个一点面试经验都没有的小毛孩,心里没有了底,生怕再出差错。我说了我发现的问题,面试官微微点了点头,然后又围绕着这个题问了几个问题,如分析一下这个程序的复杂性以及这个程序的性能还有没有改进的余地等等(这个问题是最常见的问题),因为之前这方面的东西准备的比较充分,所以答得还算不错,之后他又问我了一些PM的问题,比如,如果需要你给你团队中的程序员写一个库函数的规格说明书,你该怎么写等等,我就是按着自己的想法说了说,感觉答得很一般。然后就是下一个面试官了。(未完待续……)
原文链接:http://blog.sina.com.cn/s/blog_5dc22fb30100cria.html
分享到:
相关推荐
神奇宝贝(PokemonGo)基于Jetpack+MVVM+Repository设计模式+Data
用于试用 Dev Containers 的 Python 示例项目试用开发容器Python开发容器是一个具有明确定义的工具/运行时堆栈及其先决条件的运行容器。您可以使用GitHub Codespaces或Visual Studio Code Dev Containers试用开发容器。这是一个示例项目,您可以通过几个简单的步骤尝试任一选项。我们还有各种其他vscode-remote-try-*示例项目。注意如果您已经有代码空间或开发容器,则可以跳至“要尝试的事情”部分。设置开发容器GitHub Codespaces请按照以下步骤在 Codespace 中打开此示例单击代码下拉菜单。单击Codespaces选项卡。单击主屏幕上的“创建代码空间”。有关创建代码空间的更多信息,请访问GitHub 文档。VS Code 开发容器如果您已安装 VS Code 和 Docker,则可以单击上方或此处的徽章开始使用。单击这些链接将导致 VS Code 根据需要自动安装 Dev Containers 扩展,将源代码克隆到容器卷中,并启动开发容器以供使用。按
springboot vue3前后端分离
数学建模-神经网络算法 lecture 11 线性随机系统辨识示例 共9页.pptx
优质粳稻生产技术规程.docx
算法 - Python 目录灵感与动力贡献指南从这里开始所有算法均用 Python 3 实现(用于教育)这些实现仅用于学习目的。如果您想贡献更有效的解决方案,请随时打开问题并提交您的解决方案。灵感你可以在LeetCode 算法中寻找要实现的算法若要贡献,请确保算法尚未提交!请确保在您的 PR 中添加问题编号。贡献指南文件夹和文件请确保你的文件位于 -Folder 中LeetCode,并且命名如下 0001_TwoSum.py-> LeetCode 问题的 4 位数字、下划线、LeetCodeName开放问题当您打开问题时,请确保问题尚未实现(查看代码/Leetcode 以获取问题编号)。现有问题打开的问题将被关闭,并且对此问题的 PR 被标记为垃圾邮件 。打开问题的贡献者将被优先分配到该问题。如果大约 7 天内没有 PR,则问题将分配给另一个贡献者。拉取请求只有与问题相结合并符合命名约定(参见文件夹和文件)的 Pull 请求才会被合并!如果 PR 中没有加入问题,您的 PR 将被标记为垃圾邮件并关闭。如果您的代码未通
用于接收和交互来自 Slack 的 RTM API 的事件的框架python-rtmbot此项目不再处于积极开发阶段。如果您刚刚开始,我们建议您先查看Python SDK。如果您一直在使用此项目,我们只会解决关键问题(例如安全问题),但我们建议您计划迁移到 Python SDK。您仍然可以提交问题并向我们寻求帮助! 如果您有兴趣在未来维护此软件包,请联系我们 一个用 Python 编写的 Slack 机器人,通过 RTM API 连接。Python-rtmbot 是一个机器人引擎。任何了解Slack API和 Python的人都应该熟悉插件架构。配置文件格式为 YAML。该项目目前处于 1.0 之前的版本。因此,您应该计划不时进行重大更改。对于任何重大更改,我们将在 1.0 之前的版本中调整次要版本。(例如 0.2.4 -> 0.3.0 意味着重大更改)。如果稳定性很重要,您可能希望锁定特定的次要版本)与 webhook 的一些区别不需要网络服务器来接收消息可以回复用户的直接消息以 Slack 用户(或机器人)身份登录机器人用户必须被邀请加入频道
基于django的音乐推荐系统.zip
北京理工大学<Python机器学习应用>超详细学习笔记和代码注释(未完待续)
kernel-5.15-rc7.zip
神经网络-DenseNet网络结构
rbac组件(基于角色的权限控制)
C++ Vigenère 密码(解密代码)
数学建模培训资料 数学建模实战题目真题答案解析解题过程&论文报告 杭州消防设置-对杭州市消防局设置的研究 共8页.pdf
老年用品产品推广目录分类表.docx
本项目是基于Python的期货程序化交易系统的设计与实现,旨在为计算机相关专业学生提供一个实践性强、贴近实际应用场景的项目案例。通过这一项目,学生们能够深入了解程序化交易的基本原理和实现方法,同时锻炼自身的编程技能、数据分析能力以及金融市场的洞察力。 项目的主要功能包括:自动收集和处理市场数据、基于预设策略进行交易决策、实时执行交易指令、监控交易风险以及生成详细的交易报告。系统采用模块化设计,主要包括数据采集模块、策略执行模块、交易执行模块和风险管理模块,各个模块之间通过明确的接口进行交互。项目采用的编程语言为Python,利用其强大的数据处理库和机器学习库,保证了系统的灵活性和扩展性。开发这一项目的目的是让学生们在实践中学习和掌握程序化交易的核心技术,提升其在金融科技领域的就业竞争力。
基于java的校园失物招领平台设计与实现.docx
Javascript Ninja 课程JavaScript Ninja 课程Inscreva-se agora mesmo e ganhe 10% de desconto!Como tirar dúvidas sobre 或 conteúdo do curso访问问题页面Pesquise nas发出abertas e fechadas, se a mesma dúvida já foi postadaSe não foi, crie uma nova issues , coloque um titulo que tenha a ver com a sua dúvida, e descreva-a com o maior nível detalhes possíveis, para que possamos te ajudar:)摘要Veja o sumário completo do curso aqui。赞同!:D
solid.python通过示例在 Python 中解释SOLID 原则。单一职责原则开放/封闭原则里氏替换原则接口隔离原则依赖倒置原则
公交信息在线查询系统 微信小程序+SSM毕业设计 源码+数据库+论文+启动教程 项目启动教程:https://www.bilibili.com/video/BV1BfB2YYEnS