在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
薪资20k的程序员是什么水平?程序员的发展方向可以划分为技术专家、架构师、技术管理、管理。技术专家偏理论研讨,对某个或某些相关的专业范畴深化理解能直接或经过提供思绪间接处理这些范畴的各种问题。薪资20k的程序员相对来说是比较资深的程序员,具备的技能远超初级程序员。
薪资20k的程序员应具备的技能及相应的水平介绍:
1、算法:技术面试笔试都考算法提,所以Leetcode至少得刷两三百道,《剑指offer》所有题目都练习一遍,做过ACM更好,现在很卷面试官也只能通过算法题来加大筛选。
2、数据结构:不要求你手写红黑树,但AVL 哈希表堆这些简单的数据结构自己操作实现过;链表、线性表必须熟悉到不能再熟悉,语言的标准库实现得了解。
3、计算机系统知识:内存、堆栈、函数调用、数的表示等等,至少《CSAPP》得过一遍。操作系统:操作系统由哪些构成、进程的状态、切换、调度 进程间通信方式(共享内存、管道、消息)、进程和线程的区别、线程的实现方式(一对一、多对一等) 互斥与同步(信号量、管程、锁)、死锁检测与避免
4、计算机网络:计网知识比较繁杂,很多同学都反映网络很难学一大堆的网络协议,依次学完后,还是不知道网络是怎么构成。依次去学应用层、传输层、网络层、链路层,思考这些层之间是如何串联起来的。
推荐学习《计算机网络:自顶向下方法》 这本书从我们最常接触的 HTTP、FTP、SMTP 等应用层协议讲起,可以清晰看到引入各个层的作用。学习每层协议的时候,最好自己抓包看下,wireshark抓包遇到三次快速重传会怎么样?这样映像会更加深刻
5、数据库:sql得会写,推荐《SQL必知必会》,几个范式有没有正式运用过? 如何进行领域建模、数据库设计,才能够使得每次查询的开销最小?数据库原理方面《数据库系统概念》包含了从SQL到数据库设计再到数据库原理、分布式数据库都有,可以挑着看,比如关系模型、数据库设计(三大范式)、数据磁盘存储和组织方式、索引、并发控制等。当然了整个数据库最重要的还是索引和并发控制(锁、MVCC等),这部分也是面试常考的:
6、索引存储结构:B树、B+树索引、Hash索引 索引的使用:主键索引、覆盖索引、最左前缀原则、索引下推等 锁:乐观锁、悲观锁、表锁,行锁,意向锁,读锁,写锁等等MySQL InnoDB MVCC 实现机制 存储引擎:InnoDB、MyISAM等,各自的优缺点 事务:ACID理论 这部分推荐两本书:
7、网络编程:后台开发基本是离不开网络编程的,其实甚至整个后台开发也可以看做是在做网络编程。只不过别人的框架帮我们做了协议解析、网络数据传输、解封包这些底层操作。如 SpringBoot 这种保姆级框架,基本上属于将一个框架能干的事都干完了,以至于我们开发业务只需要定义接收和返回包的数据格式,然后做逻辑处理就完了。像序列化、解封包、IO 处理这种网络编程必备的脏活业务开发根本不会接触到。但网络编程技能还是很重要的,特别是对于 Linux C++ 开发来说。
Linux 下网络编程核心的包括系统编程和网络 IO 两个部分:
8、进程间通信方式:信号量、管道、共享内存、socket 等多线程编程:互斥锁、条件变量、读写锁、线程池等 五大 IO 模型:同步、异步、阻塞、非阻塞、信号驱动 高性能 IO 两种模式:Reactor 和 Proactor( 但是 Linux 下由于缺少异步 IO 支持,基本没有 Proactor IO 复用机制:epoll、select、poll(破解 C10K 问题的利器)推荐几本书:《Linux高性能服务器编程》、《Unix网络编程》、《Unix环境高级编程》。
9、编程语言:虽然说语言不重要,但是总得擅长一门语言?C++的必看书籍Effective三部曲,《Effective C++》、《More Effective C++》、《Effective STL》、STL 源码剖析、对象模型都得过一遍;Java学习的话JVM原理,GC ,JDK重要集合类库得看下。
10、项目:如果只是用几个框架建议不要写到简历上不如去github上参与开源项目GSOC学习。任何一个花上半年时间去实现一个简陋的原型(如实现一个简单的内核)都是非常好的简历加分项。
程序员薪资高低一般是与你的技能、经验呈一个正比关系。每次找工作面试的时候考察的都是候选人的技能、经验相关水平,然后给予一个相应的级别然后后确定一个工资范围,想要获得高薪那么程序员的专业技能是核心,其次是沟通表达能力。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
学IT编程的女生就业前景如何?
学IT编程的女生就业前景如何?学IT编程的女生就业方向有很多,总的来说IT行业就业前景广阔,学IT编程的女生毕业后可以去做平面设计、Web前端开发、网站运维、SEO、网络推广、电商运营、微信运营等,这些职位女生都是可以去做,根据个人兴趣和学习情况去选择。
8307
2019-08-07 17:57:21
程序员常用的15 种开发者工具推荐
程序员常用的15 种开发者工具推荐:Java 线上诊断工具 Arthas、IDE 插件 Cloud Toolkit、混沌实验注入工具 ChaosBlade、Java 代码规约扫描插件、应用实时监控工具 ARMS、静态开源站点搭建工具 Docsite、Android 平台上的秒级编译方案 Freeline等开发工具。
5780
2019-10-21 16:16:01
疫情过后哪些行业发展前景比较好?
2020年初一场声势浩大的新型肺炎,让全国各个行业都受到了冲击和挑战。尤其是以餐饮为代表的实体经济受疫情影响严重。在很多企业面临着严峻的考验的同时,一些互联网行业却迎来了意想不到的转机和历史新机遇。下面就跟随小编一起来盘点一下,疫情过后那些发展前景比较好的行业吧!
21116
2020-02-24 18:15:12
IT程序员怎样实现财富自由?技术是核心竞争力
IT程序员怎样实现财富自由?程序员100%的脑力工作者,但很多人把自己变成体力工作者,自己身处劳动密集型产业,有的人甚至以日产出几千行代码为傲。程序员不是简单会敲代码就行,构思、设计、编码、测试、调试,往往编码只占很小的比例。
5316
2020-03-26 15:47:03
女性程序员玛丽库姆斯的职业生涯分享
女性程序员玛丽库姆斯的职业生涯分享,玛丽出生在英国伦敦,毕业于伦敦玛丽女王大学,毕业后再瑞士教了一年英语,1952 年回国,当时她在冰淇淋销售办公室担任临时文员,后参加了食品公司 J. Lyons & Co.的招聘,继而成为了一名女性程序员。
3464
2022-03-15 10:19:18