【校招分享】怎么选择适合自己的岗位,前后端开发还是算法或产品?

目录

    • 前言
    • 1、算法
    • 2、开发
      • 2.1、后端开发
      • 2.2、前端开发
    • 3、产品经理
    • 总结

前言

对于一些刚接触互联网校招的同学来说,可能还对未来所要从事的岗位不是很了解。互联网岗位分类如何?哪个岗位有前途?或者赚钱多?门槛低?今天这篇文章我将尽量详细通俗接地气的向大家介绍互联网常见岗位,也是我身边朋友去的比较多的职位,包括:算法、后端开发、前端开发、产品经理等。

1、算法

岗位介绍
算法在互联网行业中门槛最高、薪资也最高。我对这个岗位的印象就是很难,一般招的都是研究生或者博士生,本科很少。算法岗五大标配:论文、比赛、实习、项目、学历,一般想进大厂的话,五者至少得有其四。想走这条路一定要考虑一下自己的核心竞争力是什么。因为身边从事这个岗位的朋友比较少,所以也给不了太多意见,可以找一些更专业的的人询问。只能说建议那种一直和老师在实验室做项目,掌握熟练的机器学习算法的同学可以尝试一下。

招聘要求
【校招分享】怎么选择适合自己的岗位,前后端开发还是算法或产品?_第1张图片
【校招分享】怎么选择适合自己的岗位,前后端开发还是算法或产品?_第2张图片

2、开发

开发分为后端、前端、测试和客户端开发,每个方向又有更为细分的选择。这里先只讲前后端。

2.1、后端开发

工作职责
后端开发工作在三部分,分别是平台设计、接口设计和功能实现。平台设计主要是搭建后端的支撑服务容器;接口设计主要针对于不同行业进行相应的功能接口设计,通常一个平台有多套接口,就像卫星导航平台设有民用和军用两套接口一样;功能实现则是完成具体的业务逻辑实现。

语言选择
关于后端代码,各个公司可能使用的是不同的语言,但是主流我只推荐Java、C++。两大语言占领了绝大部分岗位,需求很大。我自己当时对Java和C++都有一点入门,比较了一下觉得Java编码我很喜欢,学起来也简单点,最后就走了Java这条路。每个人可以根据自己当下的掌握程度自由选择。如果现在还什么都不会,那我是建议学Java,网上学习资源多,社区活跃度高。

招聘要求
【校招分享】怎么选择适合自己的岗位,前后端开发还是算法或产品?_第3张图片

技术栈
根据上图百度的招聘要求,我们可以整理出后端开发所需要的技术栈。

首先是通用技术栈,包括:

  • 在校期间学的数据结构、计算机网络、操作系统三大学科。
  • 数据库,建议学Mysql。
  • 技术中间件如:redis、消息队列MQ、Netty等。
  • Linux操作系统。
  • 常用的设计模式,如工厂模式、单例模式、装饰器模式等。
  • 常见算法题目,如深搜广搜、动态规划等。

其次是Java专属,包括:

  • 熟练的Java基础,如基本语句,数据类型,常用集合等。
  • Java高级一点的用法,如注解、反射和多线程。
  • JVM相关,如内存模型,GC垃圾回收机制等。
  • 开发框架,主要是Spring、SpringMVC、Mybatis,也就是常说的ssm,然后是SpringBoot和SpringCloud。

C++的我不是很了解,就不展开讲了。

后端特点
薪资高。发展前景好。门槛高。需要付出很多时间学习。

2.2、前端开发

(part by c1oud)

前端概述
个人对前端开发的定义大体上包括:web前端(HTML+CSS+JavaScript)、客户端前端(包括pc桌面端和移动端Android和iOS)、以及小程序开发等。

工作职责
不同公司的不同部门不同团队技术方向上侧重点也有所不同,例如有的团队可能侧重于前端可视化方向,有的团队侧重于底层工具、框架的实现等等。
值得一提的是,前端一直有一个切图仔的自嘲称号。虽然我的实习/工作经验并不多,不过大家可以放心,这真的只是个自嘲的称号,前端工程师可以做的事远远比切图有趣得多。

招聘要求
【校招分享】怎么选择适合自己的岗位,前后端开发还是算法或产品?_第4张图片
技术栈
必备技能/基础:HTML、CSS、JavaScript (ECMAScript);
进阶技能:TypeScript、Nodejs、小程序、Webpack、…;
开发框架(主流):React、Vue;

学习经验
1、前端基础一定要掌握牢固,三大件中最为重要的是JSES6一定要系统学习。
2、计算机网络数据结构 同样是考察的重点;但相比后端来说,前端面试对操作系统的考察较少。
3、浏览器原理也需要重点学习,包括缓存、网络等知识点,往往会和计网的知识一起考察。
4、开发框架react/vue掌握其中之一即可。对于实习面试,对框架的要求较低,会用即可。不会的话同样可以进面试。但对于校招面试来说,框架需要有一定的使用经验,甚至对原理/源码有一定了解。
5、前端工程化,前端模块化。这方面的知识需要了解掌握,如果觉得陌生就利用好搜索引擎和视频网站去学起来。
6、杂项(包括但不限于前端安全,前端架构,前端性能优化、设计模式…)。
7、Node.js、小程序、severless等,如果有相关项目经验并且有一定了解,可以写到简历里,如果面试问题回答的不错,是加分项。

(笔者依据自己面过的面试和学习经验,关于实习/校招面试情况仅供参考

总结
前端也许是一个"门槛"较低的方向,但要想做好前端并不简单。每年都有大量的毕业生涌入前端赛道,但真正成长为前端专家的却少之又少。对于应届生来说,相比于后端和算法等方向,前端通过一段时间学习确实可以“速成”,但如果真的是抱着认为前端门槛低,前端简单的心态来学前端,不去深入学习的话,你可能就被当成韭菜来噶了!所以无论是做什么选择,都要一直保持学习,coding无止境,加油!

3、产品经理

(part by lcb)
概述
产品经理是最近十年伴随互联网企业火的职业,因为其没有专业限制、薪资可观而越来越卷。产品根据自己负责的业务方向不同,也有不同分类,大体上分为to B 和to C ,还有一种最近很火的商业产品经理 。B端产品细分又有支付、中台、后台系统等等。C端呢又分为用户体验、用户增长、营收等等。
工作职责
每次和家里人说我是干产品的,他们都会问那具体是干什么,我就会套用流传很广的一句话:产品是发现问题并解决问题得人。具体来说,就是发现你负责的产品存在的问题(产品使用体验 产品功能迭代等等),并提出解决方案 (撰写prd通过评审),然后优化解决问题为公司创造价值 。
招聘要求
【校招分享】怎么选择适合自己的岗位,前后端开发还是算法或产品?_第5张图片
自身能力
产品经理没什么硬性能力要求,除了会画一些原型图,更多地是对软性能力的要求。包括:
逻辑思维能力;沟通表达能力;团队协作;数据思维;大局观;责任心;同理心;感性思维等等,看起来很虚的软性能力但确实体验在产品每天的日常工作中 。
为什么选择产品
1.不限专业 如果你想进互联网公司,那么产品是一个很好的选择,他不管你是材料还是人文,不管你懂不懂代码都有从事产品的机会。
2 薪资可观,产品经理平均薪资还是相当可观的。
3.成就感,作为一个产品经理,成就感我觉得是支持我坚定走产品这个岗位的原因。当你自己负责的项目上线以后你就会有那种油然而生的成就感,这个我觉得不管是开发还是测试都比不了的。

总结

文章每部分都是由对应岗位的同学来写的,之前也都是摸着石头过河然后上岸的。这些经验都是每个人切身体会然后总结出来的,可能比较主观,但是一定会对互联网岗位还不了解的同学有帮助。有些部分说的可能不够全面,如果有问题欢迎继续提问。后续可能还由测试客户端等岗位的介绍。

你可能感兴趣的:(干货分享,经验分享,面试,后端,java)