想进入互联网行业,应该做些什么?
想进入互联网行业,应该做些什么?
ivansli0. 为什么写这篇文章
可能有的读者会问:写这篇文章的意义何在呢?
那么,我可能会稍微思考一下,然后给出以下解释:
- 首先,作为在互联网浸淫10年的菜鸟,一路摸打滚爬,也算是总结了一些不知可否称之为经验的经验,想分享给后来人
- 其次,总结本身就是一种对过往的梳理,可以查漏补缺,进一步提升自己
- 再者,分享也是一种学习
对于想从事互联网行业的人来说,你可能想知道:应该怎么做以及做些什么?
笔者承认自己不可能分析的面面俱到,但是,尽量抓住重点。这里,我简单的从人生三个不同阶段进行划分,并罗列出每个阶段应该做的一些事情。
1. 高中阶段
高中阶段,学好功课为主,可以适当的培养编程兴趣。
一考定终生。考个好大学可以为你增色不少,甚至可以说对大部分人的后半生、职业生涯会产生至关重要影响。举个例子:在未来找工作的时候,当你的简历被各个互联网公司筛选时,他们会把毕业院校做为十分重要的一项指标(假设两个编程能力相同的人,一个是普通二本、一个是211、985。你觉得HR会优先录取哪个人?为什么?)。
更有些招聘者会说出:”考不上好大学的都是智商有问题”这种极端的话语。
但是,由此可见一斑。
学历重要不重要,只有用到的时候才知道。对于大部分人来说,学历决定着人生的天花板到底有多高。
这个阶段不做过多解读,重要的事情说三遍:好好学习、考个好大学,好好学习、考个好大学,好好学习、考个好大学。
2. 大学阶段
进入到大学之后,本身意味着你已经做出了一个人生最大的选择,选择了自己喜欢、热爱的方向(当然是大部分人)。那么,对于接下来的四年大学生活,不仅需要给自己做一个规划,更需要对自己接下来需要掌握的知识进行梳理,不要落到“大学毕业即失业”的境地。
对于未来想从事计算机编程的学生来说,整个大学期间主要课程+选学的课程,大概需要学习20+门左右,需要分清主次。
1.关于计算机的基础课程
- 《计算机组成原理》
- 《计算机网络原理》
- 《计算机算法导论》
举个例子,你开车的话,不知道车的各个部件是怎么运作的,只能算个会开车,不能称之为资深玩家。
互联网行业级别:入门小白 -> 高级工程师 -> 资深专家 -> 计算机科学家。
大部分人,终其一生处于前两个级别。
2.关于编程语言
- C/C++
- Java
- Golang
- Python
在计算机领域基本是C生万物,万物共生。
首先,整个互联网就是构建在C语言之上的。其次,很多编程语言底层还是基于C语言开发的。
学习的编程语言决定着:未来薪资的多少以及在计算机领域可以达到的高度。
做底层开发 C/C++,做应用层开发:Java、Golang、Python等
3.关于算法
- 刷LeetCode/牛客网
- 参加编程竞赛
算法有多重要,我已经不想多说了
程序可以认为是:数据结构+算法
当你面试的时候,各种理论讲的再流利,算法题做不出来,基本可以后会有期了。
4.关于操作系统
Linux
1.常用命令行工具
《鸟哥的Linux私房菜》、各种网上博客、参加专业运维培训
2.常用服务搭建Windows
1.常用编程软件使用
2.Linux子系统使用Mac OS
1.常用编程软件使用
2.常用命令行工具
各个公司线上服务器跑的都是基于Linux内核的各种分发版本(国内用的最多的是centos)。
Mac os、Windows则是各个公司开发常用的操作系统。
5.关于英语读写能力
- 日常口语交流
- 日常英语书写
- 计算机常用词汇掌握
想去外企、国外工作的,英语必不可少,至于为什么去外企?那就是福利、待遇、加班的博弈了。
3. 大学毕业阶段
当你处于这个阶段的话,首先恭喜你已经可以靠自己立足于这世间了。其次,要告诉你一件可怕的事情:漫长的加班之路已经对你开启。
到了这个阶段,基本分为几类:
- 继续深造
- 校招进入一家公司
- 进入社会,通过社招进入一家公司
- 其他专业出家来做开发的
这里重点说一下关于社招需要掌握的一些技能。
1.关于算法
- 刷LeetCode最少100道
面试时,算法具有一票否决权。
稍大点的公司,必不可少。难度:中高级
2.关于计算机基础
- 进程、线程、协程,I/O多路复用等原理
- 系统调度原理
- 网络原理
- 数据库索引、存储引擎
考察对底层原理的掌握程度,其决定了职级高度
3.关于常用服务级别组件
- 缓存(常用Redis)
- 数据库(常见MySQL)
- 消息队列(常见kafka)
- 服务注册发现
- web服务器(常见nginx)
- 限流熔断
- 链路追踪
- 监控
- 容器、虚拟化
日常开发与之打交道的各种组件,也是支撑如今互联网的大数据量、高并发量的热门法器。
4. 总结
至此,笔者简单的梳理了一下,人生中在不同阶段想进入互联网行业,需要做、以及需要掌握的一些技能。
仁者见仁智者见智,至于重要不重要,当处于对应的环境才会知道。
最后一句话:此生也有涯,此生学无涯。