链接:https://www.nowcoder.com/discuss/191590
来源:牛客网
 

首先是个人基础信息的填写:

  1. 身在国外的同学建议留 2 个手机号,一个国内的,一个国外的,并在简历上面标明 HR 小姐姐可以给你打电话的时间,不要因为自己的小疏忽,错过offer或是在不佳状态面试。
  2. 基础信息不要遗漏:姓名、年龄、毕业年份、本科/研究生的专业、学校、当前所在城市、目标工作城市、可实习时间、可到岗时间、联系方式、邮箱/wx/qq、求职意向。
  3. 选填信息:github、blog、个人作品地址、个人照片。
  4. 不要什么基础信息都写:身份证号、高中学校、星座、血型、身高、体重、是否单身、籍贯、政治面貌、民族、具体出生年月日、驾驶证、计算机二级、营养师.....

 

实习经验

对于求职实习生的胖友们来说,有一份实习经验难能可贵,具备实习经验的同学也是凤毛麟角,有实习经历的同学不要浪费自己的好牌,有以下几个地方需要斟酌:

1、实习经历与你当前所投递岗位是否契合?举例:投递 Java 实习生,简历上写的却是产品助理实习相关经验。

2、实习经历过短,其实大多数有过实习经历的胖友们都面临着这个问题,从一个 HR/面试官的角度看,这么短的实习经历,你是否有所收获?做了哪些事情?为什么离开实习公司?请认真思考这几个问题,实习经历不是万金油,很有可能是你自己埋的坑。

3、多段实习经历,每一段都比较短暂,一些 HR 可能会认为你不稳定。

4、实习经验造假,其实真没那个必要的,被问起来戳破,尴尬的是自己。

5、实习期间只能打杂(划水摸鱼),并没有做很多事情,我这里列举一下可以思考的点:

1) 你所负责的项目是做什么的呢?靠什么赚钱呢?你该和一个完全没接触过这个项目的人怎样介绍这个项目呢?

2) 开发工具用的怎么样呢?公司的整体开发链路是什么样子的呢?需求评审/技术评审/case评审/代码CR 应该怎么做,怎么上线的?出问题怎么办?出了问题你怎么解决的?

3) 你接触到的项目是怎样设计的呢?为什么这样设计呢?有利用到设计模式吗?

4) 如果是分布式项目,你负责项目上下游是什么系统?怎样交互的?

 

 

接下来,就到了项目!!!

1、感觉自己项目太简单?

这里引用自己在这个帖子里面的回答 https://www.nowcoder.com/discuss/189295

  • 比如你说你做了MySQL读写分离,为什么要这么做?用了xxx技术,是否深入了解过原理?哪怕是一个简单的xxx管理系统,他的表结构,你是基于怎样的考虑设计的?是否考虑到了后续的扩展和改动?
  • 如果说实习参与了分布式项目,深入了解过哪些中间件原理?接口是否有考虑过幂等?是否有涉及到分布式事务问题?如果是分库分表,是基于怎样的维度拆分的?写代码时候是否有关注过线程安全、性能、加密?是否了解项目整体的架构?是否熟悉上下游的调用流程?
  • 你说你做了秒杀系统,你是怎样压测的?怎样抗住xxx的QPS的?遇到性能瓶颈是怎样处理的?是否用了缓存?对于缓存有了解多少?缓存和数据库是怎样保证一致性的?

    我的建议是:项目难度并不是重点,重点是对于你的项目,你是否有过一些自己的思考并动手实践。切忌疯狂罗列技术名词,然后自己不知道为什么用他们,给自己挖坑。

     

    2、没有自己搞过项目,跟着网上的项目学习,然后放在简历里面?

    淘淘商城?新巴巴运动网?黑马的xxx管理系统?慕课网xxx前后端分离商城?跟着叶神做的问答社区网站?

    这种情况还是蛮多的,主要发生在没有跟老师做过项目的本科同学、跨专业的同学、读研期间导师放羊的同学身上。

    这种情况是可以理解的,但是有以下几个地方需要注意:

     

    1) 你是照着敲,还是学习完自己搞?建议后者。

    2) 学习期间一定遇到过问题,你是怎么解决的?解决了之后,你是否知道错误的真正原因?背后原理是否关注过?关于如何解决问题,建议自行总结,建立自己的一套方***,对自己是有好处的。

    3) 像淘淘商城这种用了很多种技术的项目,这些技术的选型和方案的制定,真的正确吗?举例:图片为什么要上传到图片服务器上面?如果只有几张图,这样的方案是否有意义呢?

    如果你的项目使用了缓存,为什么要使用缓存?如果不用会怎么样呢?看视频不要只顾着敲,敲完就完事了?多问自己几个为什么,可以帮助你拉开和其他同学的差距。

    4) 一些同学会在项目中,列举很多技术名词,如某消息中间件、RPC中间件、数据库中间件、分布式事务、高并发、高可用、微服务、SOA等等。

    当你列举这些名词的时候,请思考:你真的能了解这些东西吗?能顶得住几个回合?是否知道他们的应用场景和其内部的原理呢?要知道这些名词随便拉出来一个都可以写本书了呀。

    希望靠这些名词,给自己的简历加分的同学,请谨慎填写,如果写了被问到,然后支支吾吾,一顿胡吹,可能效果还不如不写。

    5) 请熟悉你的项目,要把自己的项目里里外外搞的明明白白,表结构设计、系统分层、技术选型、技术难点、模块设计,基于怎样的思考来设计?是否考虑动手改一改加一加功能呢?

     

    个人技能

    项目经历丰富的同学,这个模块可以不写,因为这个模块可以在聊项目的时候一起问。

    关于个人技能,好多同学又是开始列举各种各样的技术名词。。

    1、什么样的技术名词可以写上去呢?

    学习过、使用过,简单了解其背后原理,当然深入了解过更好。如果说简单使用都有点懵逼的同学,不建议写在上面。

     

    2、关于技术的熟练度

    除非你是巨佬!否则严禁精通任何技术名词!精通Java、并发、JVM、分布式事务那几个同学你给我站起来!我以前还见过写精通c++的实习生。。。。

     

    3、Java 技术栈的同学,以下几个名词需要注意

    1) JVM,通常写JVM的同学,应该都看过周志明大大的《深入理解Java虚拟机》,有些段落我当年甚至背诵并默写。。。某些面试官是不大喜欢花里胡哨的,请思考:是否已经能够熟练背诵?

    了解哪些JVM参数?了解哪些JVM命令呢?解决过什么问题呢?是否有动手玩一玩呢?如果你没有项目经验,没有接触实际项目的机会,我这里可以提供下思路,现在我让你写一份内存泄漏的代码,

    你应该怎么写呢?;idea用过吧?idea也是有JVM参数的,如何让你的idea更流畅呢?

    2) Java并发包,可能很多同学都读过《Java并发编程实战》,请不要沉迷理论,只顾着背诵,阅读时可以带一些自己的思考,线程池的参数都适合什么样子的场景?什么样的代码是线程不安全的?

    怎样做到异步?几种异步实现方式有什么差异?读源码之前先学会如何使用,应该用在哪里?否则背完以后你还是一脸懵逼。。。。

    3) xxx中间件,要了解原理和使用场景,一脸懵逼的使用,是不会起到加分效果滴!