在大多的JD(职位介绍)里,会写明该职位需要xx时间的相关经验,换句话说就是需要在简历中看到一定年限的相关商业项目经验,否则估计连面试的机会都没。

在本文里,不讨论这种门槛是否合理,而会以Java相关经验为例,说说面试官甄别真实商业项目的方式,并以此为基础讲述在简历中描述项目的要点,并进一步给出在面试中介绍项目的相关技巧。

1 和学习项目相比,商业项目为什么值钱?

为什么在筛选简历和面试过程中要甄别学习项目还是商业项目?

1  学习项目里,只要跑通正常流程,无需考虑异常处理机制,也无需经过高并发情况下的压测。

2  学习项目里,数据库方面,只需增删改查,而商业项目里会涉及到优化甚至集群。

3  学习项目里,模块间功能调用基本就靠写类写接口,而商业项目里,需要考虑微服务高并发场景,甚至需要考虑服务失效。

4 学习项目里,最多搭建个web服务器,把代码一扔,直接跑就能看出效果,而商业项目需要专门部署,还需要写日志,以及根据日志调试问题。

总之,商业项目有很多事情,比如黑盒白盒单元化回归测试,运维部署,和需求方扯皮,和其它team讨论接口等等,这类事情在学习项目里甚至都想不到。

而一些培训班让学员做的项目,在帮助学员提升相关技能方面,或者有些作用,但仅此而已。如果直接在简历中当商业项目写,甚至还会起到反作用。而不少培训班所谓的就业培训老师,让他们自己去面试java之类的开发岗,还未必能成,可想而知他们煞有介事的“包装简历”和“模拟面试”的效果了。

本人内心自认为尚不算阴暗,不会因为看穿此类项目经验而窃窃自喜,相反更会内心沉重:候选人也算上进,但他们费钱费时间费经历准备的简历和面试技巧毫无用处,而我职责使然又没法让他们过。正因如此,在后文里将给出相关的甄别技巧,说难听点,至少吹牛也得打草稿吧。

2 一些编造项目经验的方法其实是掩耳盗铃

我听说有些培训班所谓的就业辅导,是给学员zh若干项目模板和问题,让学员练习,并通过模拟面试让学员说起来像模像样。甚至有些培训班自己还有公司,所以提供的项目也算有据可查。培训完以后,就由老师带队到北上广去应聘。

有时候甚至不用面试,一些有经验的面试官直接能从简历上甄别出这些虚假项目。比如项目名是xx金融管理系统,xx财务系统,xx学籍管理系统等,时间不会超过半年,技术方面就很敷衍地写一些常规技术,比如spring mvc,redis,jdbc等。

或者为了慎重,在面试里可以通过如下问题来确认。

1 你项目是如何部署在什么环境上?发布流程是什么?如果出现线上问题,如何排查?很多培训班项目或学习项目也就随便找台机器运行通就了解,所以候选人接触不到基于linux部署以及基于maven和jenkins的打包部署流程,这个问题可以问出很多编造的项目。

2 在项目里,代码review和单元测试,是怎么做的?同理,很多培训班项目只考虑功能,不考虑这块。

3  这个项目现在是否上线?大多数培训班项目一般都不会上线,同时会有很多不上线的理由。

4  抽出项目里用到的一个高大上的技术,比如dubbo,问负载均衡和失效转移的问题。在不少培训班项目里,对这些分布式组件,仅仅是调用而已,不大会考虑分布式部署的问题,当然估计也没资深的老师能把这块讲透。

很多创业公司,或规模很小的公司,有时候会招不到人,所以是没资格挑挑拣拣的。这时遇到项目经验造假的人,只要技能尚可,或者甚至只要动手能力强,就会录用,至少我在身边看到的一些小公司是这样的。但录用管录用,面试官其实是知道候选人项目底细的。

3 商业项目如果写得很敷衍,就会被当成学习项目(简历中商业项目该怎么写)

针对之前讲述的甄别方式,这里会给出若干在简历中写商业项目的技巧,一方面,如果很敷衍地写,你的项目经验就会被当成学习项目,另一方面,如果在简历上包含足够多面试官感兴趣的要素,你的简历通过筛选的可能性就越大,也就是说,能得到更多的面试机会。

1 讲清楚必要的要素,比如项目周期,人数,项目名,客户是谁,用到什么技术,但就凭这点,无法证明是商业项目。

2 讲清楚部署和上线的方式,比如在云端,或linux上如何部署,用到哪些命令?上线前测试怎么做的?是否用到灰度测试,把这块讲清楚了,会让人感受到你不仅会开发,更有运维方面的技能。

3 讲清楚管理项目质量的方式,比如单元测试工具,通过sonar等工具提升代码质量的方式。

4 写明目前项目已经上线,再可以提一下,如果平时遇到产线问题,是通过什么工具排查和解决的。

自然,如果在项目里用到了其它好的技术,比如用elk收集日志,用zabbix进行压测,这种就属于不写白不写的。

我之前在面试时,发现很多候选人其实做了很多事情,各种技能掌握得也非常到位,但在简历中丝毫没体现出来,这就很吃亏,因为这可能就错过了不少面试机会。

4 在校生和毕业生,该如何准备项目经验

不少毕业生在找工作时,苦于没实际项目经验,一方面确实可以在大三大四时干些实际项目,但如果确实在找工作时没项目,那该怎么办呢?

1 这时候没办法了,得加班加点,用最多一个月的时间,运行通一个全栈的项目,比如vuejs+Spring Boot+mybatis,这个过程中有问题,赶紧通过看视频看资料等各种手段弥补,项目未必要大而全,甚至只包含简单几个增删改查功能也行,但第一要了解全栈流程,第二要了解必要的技术语法。这个过程一定不能省。

2 挖掘毕业设计和之前的课程设计,看下其中哪些需求点和商业项目很类似,这些需求点能否用基于java的技术实现?如果可以,这好歹也算是项目经验。

3 我知道不少网站能提供项目,不要多,就运行通一两个即可,但其中需要包含java全栈技能,因为这些项目有足够多的指导文档,调试通过应该不难,这绝对可以算学习项目。

对毕业生而言,招聘要求不会太高,一般没商业项目,只有学习项目也会让过。在通过上述方式掌握若干学习项目以后,按如下思路准备简历上的项目。

1 介绍项目技术时,如果可以,尽可能多地写些打包部署调试等技能,这块应该不难,比如在自己机器上装个jenkins或ant或sonar,然后实践一下。

2 多写些解决的实际问题,比如mytabis里事务是怎么调通的,总之,别浮于技术,再深入写些技术的实现细节。

3 从异常处理、数据库批处理优化、数据库索引、设计模式甚至虚拟机调优角度,写下项目的实现细节,这块属于基本的jdk和数据库知识点,也应该不难实现。

这样一写,虽然还是没法让学习项目变成商业项目,但由于深入细节,好歹能超过大多数学习项目,相比于其它同学,你就会有更多的面试机会。

当然,如果有机会,最好还是得找些实际商业项目做下,很多点只有做了才知道,很多技能只有做了才能掌握。

5 工作若干年转行时,没商业项目经验该怎么办?

对于工作后想转行做java的同学,这里给出如下的建议。

1 如果工作忙,如果平时自己感觉没时间学java,可以报个比较好的培训班,毕竟培训班里有成套的知识体系,这比自己学要省事省时间。

2 看下你之前的工作经验,能否和java沾边,比如之前做测试或者运维,多少能碰点java,在写项目经验时,就可以着重偏向java。

3  我知道有些同学,比如之前3年是在做c#,通过培训掌握些java技能,然后就把之前的经验全写成基于java的,虽然如果面试过关,这无法用任何方式甄别出,但这块涉及诚信,请大家自己斟酌考虑。

4 对于转行的同学,第一份工作得看重实际机会,比如找个外派活,找个小公司,这些公司的招聘要求稍微低些,或许能帮助相关同学成功转行。

不过话说回来,工作3年转行还行,如果工作5年以后再转行,那就需要非常慎重了。

6 总结:不自暴自弃,毕竟不是每个公司都有资格挑人

固然说,努力要乘早,在校阶段就应该尽可能找实习机会,但任何时候努力都不会嫌晚,用文本提到的方法,初学者最多用1个月的努力时间,就能在简历中归纳出一个学习项目。而对于比较初级的职位,或者一些小公司,有时候候选人只要靠刷题就能进去,更何况掌握了若干学习乃至商业项目。所以,哪怕在当前阶段感觉自己什么都不懂,也绝不能自暴自弃,比如颓废无节制地用无聊的视频来打发时间,而应该立即找书找资料找项目提升自己。

通过本文给出了若干甄别商业项目的方法,大家可以对照比对你简历上的商业项目是否会被误杀,而本文给出的在简历上描述项目的技巧,更经过了不少毕业生的实践检验,应该具备足够的可操作性,最后希望此文能帮助到大家。

版权说明:

如果要转载本文,请先征得本人同意。

从面试官甄别项目经验的角度,说说如何在简历中写项目经验(java后端方向)的更多相关文章

  1. 以技术面试官的经验分享毕业生和初级程序员通过面试的技巧(Java后端方向)

    本来想分享毕业生和初级程序员如何进大公司的经验,但后来一想,人各有志,有程序员或许想进成长型或创业型公司或其它类型的公司,所以就干脆来分享些提升技能和通过面试的技巧,技巧我讲,公司你选,两厢便利. 毕 ...

  2. 面试官:都说阻塞 I/O 模型将会使线程休眠,为什么 Java 线程状态却是 RUNNABLE?

    摘要: 原创出处 https://studyidea.cn 「公众号:程序通事 」欢迎关注和转载,保留摘要,谢谢! 使用 Java 阻塞 I/O 模型读取数据,将会导致线程阻塞,线程将会进入休眠,从而 ...

  3. 从项目经理的角度看.net的MVC中Razor语法真的很垃圾.

    我们知道,Razor语法中我们可以直接使用@if(){}等代码段,这使得.net程序员在写模版时更容易了. 对比如下: 语法名称 Razor 语法 Web Forms 等效语法 代码块(服务端) @{ ...

  4. 面试官提出的问题应该怎么答?(如开发中使用过EasyUI吗?)

    Jquery EasyUI是第三方基于Jquery框架开发的一款轻量级的,侧重于页面显示部分的框架,也可以称为插件. Jquery EasyUI使用比较简单,也有比较全的文档可供参考. 常用的组件就是 ...

  5. 8年经验面试官详解 Java 面试秘诀

      作者 | 胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三 ...

  6. 如何准备Java面试?如何把面试官的提问引导到自己准备好的范围内?

    Java能力和面试能力,这是两个方面的技能,可以这样说,如果不准备,一些大神或许也能通过面试,但能力和工资有可能被低估.再仔细分析下原因,面试中问的问题,虽然在职位介绍里已经给出了范围,但针对每个点, ...

  7. 4000字干货长文!从校招和社招的角度说说如何准备Java后端大厂面试?

    插个题外话,为了写好这篇文章内容,我自己前前后后花了一周的时间来总结完善,文章内容应该适用于每一个学习 Java 的朋友!我觉得这篇文章的很多东西也是我自己写给自己的,比如从大厂招聘要求中我们能看到哪 ...

  8. 大厂面试官:Java工程师的“十项全能”

    想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,在面试之前到底需要准备哪些东西呢?面试时面试官想了解你的什么专业技能,以下都是一个合格Java软件工程师所要具备的. 一.专业技能 熟练的 ...

  9. 引用面试官文章 :如何准备Java初级和高级的技术面试

    本人最近几年一直在做java后端方面的技术面试官,而在最近两周,又密集了面试了一些java初级和高级开发的候选人,在面试过程中,我自认为比较慎重,遇到问题回答不好的候选人,我总会再三从不同方面提问,只 ...

随机推荐

  1. Java多线程编程(六)单例模式与多线程

    在使用多线程技术的单例模式时会出现一些意想不到的情况,这样的代码如果在生产环境中出现异常,有可能造成灾难性的后果. 一.立即加载/“饿汉模式” 立即加载就是使用类的时候已经将对象创建完毕,常见的实现方 ...

  2. 设计模式C++描述----10.装饰(Decorator)模式

    一. 举例 我之前做过一个文件系统就叫 MyFileSys 吧,后来的话,客户想加入一些附加功能,比如压缩.加密.杀毒之类的操作,这些附加操作没有先后顺序,比如你可以先压缩再加密,也可以先杀毒再压缩, ...

  3. win系统下之docker安装centos7镜像

    1)    拉取镜像 输入命令docker pull centos:7 从仓库拉取centos7的镜像 2)    查看本地镜像 命令:docker images 可以查看已经把centos的镜像拉取 ...

  4. 微服务架构案例(05):SpringCloud 基础组件应用设计

    本文源码:GitHub·点这里 || GitEE·点这里 更新进度(共6节): 01:项目技术选型简介,架构图解说明 02:业务架构设计,系统分层管理 03:数据库选型,业务数据设计规划 04:中间件 ...

  5. 网络安全-主动信息收集篇第二章-二层网络扫描之Netdiscover

    专用于二层发现 可用于无限和交换网络环境 主动和被动探测 主动模式:netdiscover –i 网卡名 –r IP/网络位  /   netdiscover –l IPList.txt 被动 net ...

  6. [考试反思]1102csp-s模拟测试98:苟活

    好像没有什么粘文件得分的必要(本来就没多少分了也丢不了多少了) 而且从这次开始小绿框不代表首杀而代表手速了2333 其实我挺菜的,牛一个frepoen送掉100分才跟我并列%%%milkfun mik ...

  7. [考试反思]1019csp-s模拟测试80(a):天遣

    A组题,所以把榜粘全了. 第6名,被卡在刚好正中间. 我最近干什么伤天害理的事了?(例如说没有在skyh去上厕所的时候捶他) 上来看T1,非常贴心出题人直接把递推式子给你了,然后就和斐波数的递推一样了 ...

  8. strGame:博弈论,trie

    挺有意思的一道题.初探博弈论. 最好自己思考? 我们先考虑只有1轮游戏的情况. 这题明显要在字符串上一位一位地走,所以对字符串建立起trie. 最终建立起的trie的叶节点就是必败位置了. 对于非叶节 ...

  9. MQ基本应用场景

    简介 消息队列 MQ 既可为分布式应用系统提供异步解耦和削峰填谷的能力,同时也具备互联网应用所需的海量消息堆积.高吞吐.可靠重试等特性. 应用场景 削峰填谷:诸如秒杀.抢红包.企业开门红等大型活动时皆 ...

  10. Unity中用Mesh画一个圆环(二)

    中目标-生成完整面 在之前的内容中我们已经成功生成了一个面,接下来我们要生成剩下的面就很容易了. 我们把之前生成的面当作顶面,接着我们来生成底面. 还记得前面说过\(\color{#1E90FF}{D ...