应届生除了要良好地掌握算法和数据结构以外,以下一些技能点列表希望对大家有帮助,有兴趣的朋友可以参考这个针对性地补缺补差。

文章列出的技能点有的要求熟悉,有的了解即可,注意技能点前面的修饰词。如果没有明确给出“熟悉”“了解”等字眼,要求均为熟悉。

一、编程语言

۞ C/C++方面

▷ 熟悉内存分布(堆、栈、静态/全局/局部变量、虚指针…)

▷ 熟悉Makefile。

▷ 熟悉gdb调试(断点、查看内存、执行跟踪、了解CPU主要寄存器作用…)。

▷ 熟悉性能分析工具(gprof)。

▷ 熟悉C-Runtime常用函数(如字符串格式化函数printf、scanf,字符串比较连接函数、内存分配函数、文件与目录操作函数等)。

▷ 熟悉stl库。

▷ 熟悉OO思想、常见设计模式(如单例模式、工厂设计模式、装饰者模式、Builder模式、生产者消费者模式、策略模式等)。

▷ 熟悉RAII、pimpl惯用法。

▷ 有一定的代码质量和重构能力。

二、操作系统方面

۞ 多线程相关与线程之间同步技术

熟练使用(但不局限于)以下linux API。linux下的线程创建、等待、获取线程id

常见线程之间的同步技术(何时该用那种技术)

互斥体

信号量

条件变量

读写/自旋锁

▷ 熟悉守护进程的创建、原理

▷ 了解计划作业crontab

▷ 熟悉进程、线程状态查看命令(topstracepstack

▷ 熟悉内存状态查看命令memstatfree

▷ 熟悉IO状态查看命令iostatdfdu

▷ 了解linux文件的权限、用户、时间(ctime、mtime、atime)、inode等文件基本属性,熟练使用chmodchownchgrp等基本命令。

▷ 熟悉文件传输命令scprzsz命令、

▷ 熟悉文件定位命令findwhereis命令。

▷ 熟悉软链接,熟悉ln命令。

▷ 熟悉lsof命令。

三、计算机网络

▷ 熟悉tcp状态机(三次握手、四次挥手)。

▷ 熟悉tcpdump命令。

▷ 熟悉网络状态和防火墙状态查看命令:netstat、ifconfig、iptables

▷ 熟悉socket API,包括但不限于(connectacceptbindlistensend/sendtorecv/recvfromselectgethostbyname

▷ 熟悉epoll,熟悉水平触发与边缘触发。

▷ 熟悉阻塞socket和非阻塞socket在connect、send、recv等行为上的区别,如何将socket设置为非阻塞的

四、数据库

▷ 熟悉数据表结构设计(三范式、字段属性)。

▷ 了解查询优化(索引的概念与创建、sql优化)。

▷ 熟悉常见的mysql API函数:

五、脚本工具

▷ 了解shell基本语法、变量操作、函数、循环/条件判断等程序结构。

▷ 熟练使用文本编辑工具vi/vim。

▷ 了解使用文本处理命令grep、sed、cut。

▷ 了解awk命令。

最后,下方评论透露一下你的实习工资,看看你有没拖后腿!

—————————————

- End -

不管你是转行也好,初学也罢,进阶也可,如果你想学编程,进阶程序员~

【值得关注】我的 编程学习交流俱乐部 !【点击进入】

C语言入门资料(网盘链接免费分享)

C语言推荐书籍(PDF免费分享)

C/C++实习工作应该具备那些能力?才能拿更好的工作和薪资!相关推荐

  1. 我眼中的校招【linux C 工程师】应该具备的能力

    概要 临近秋招季节,公司也进入了在进行校园招聘流程,结果大失所望,"颗粒无收".面试官同事也向我抱怨为什么现在的学生基础这么差,基本的计算机知识都不能掌握,难以完成公司交付的招聘任 ...

  2. 自学玩编程需要具备哪些能力

    作为一名自学的编程爱好者,要具备哪些能力才能在逐步变成别人眼中羡慕的大佬呢? 我认为第一就是兴趣, 兴趣是每个人在人生成长过程中自发产生的,兴趣是最好的老师,对编程不感兴趣的人真的会认为编程很无聊,成 ...

  3. 如何在日常工作中提升技术能力

    如何在日常工作中提升技术能力 相信我们很多工程师在工作中做的最多的就是CRUD的任务,可能很多同学觉得这些工作不会有成长的机会或无法提升,其实这些大部分都是眼高手低的心里,CRUD也可以学到更多.做到 ...

  4. 网络安全工作需要具备的10种能力

    网络安全发展不能离开专业的人才,但只有专业能力和职场技能兼备的人,才能了解攻击者的动机和内部运作方式,帮助为企业组织分析和解决各类网络威胁问题.从事网络安全工作需要具备两大类技能:专业技术能力和软件职 ...

  5. 网络安全售前工程师需要具备哪些能力?

    网络安全售前工程师需要具备哪些能力? 一张思维导图即可一目了然 售前工程师在项目前配合销售拿单提供技术支持,需要了解公司,公司产品,技术框架等细节,同时还需要了解行业竞争对手产品,各自的优劣势,就公司 ...

  6. 开发工程师应该具备哪些能力

    今天看到了一篇文章,一个五年阿里人写的,再一次唤醒我对阿里的向往. https://www.hollischuang.com/archives/5367 另外还看到他的一篇文章:在阿里工作5年了,斗胆 ...

  7. 系统架构师具备的能力和构架师自我培养过程

    2019独角兽企业重金招聘Python工程师标准>>> 系统架构师具备的能力 一般来讲,系统架构师应该拥有以下几方面的能力: 1:具备 8 年以上软件行业工作经验: 2:具备 4 年 ...

  8. 高级政工师具备的能力_一个合格的政工师应该具备哪些条件与素质

    思想政治工作是我们党的优良传统和政治优势,作为新时期下企业的政工人员,要继续发扬传统和优势,不断增强使命感和责任感,大力提升自身修养,站在企业改革发展.职工文明富裕的大局和高度,竭尽所能并创造性地开展 ...

  9. 大数据治理需要具备哪些能力和关键技术?

    在企业数据建设过程中,大数据治理受到越来越多的重视.从企业数据资产管理和提升数据质量,到自服务和智能化的数据应用,大数据治理的内容在不断发展和完善,其落地实施的过程中会遇到各种各样的难题和挑战.本篇文 ...

最新文章

  1. Linux磁盘挂载和docker安装
  2. python数据分析报告的格式_Python数据报表之Excel操作模块用法分析
  3. A good memory allocator is everything that I need
  4. 2021中国民营企业500强调研分析报告
  5. 分析了 200w 行 OpenHarmony 2.0 源码后,有了这些发现
  6. C++实现离散余弦变换(参数为二维指针)
  7. VMware Workstation 備份與恢復虛擬機
  8. git常用命令让你几步摆脱图形工具提交项目
  9. CMU 15-213 Introduction to Computer Systems学习笔记(21) Synchronization: Basic
  10. HTML5正确嵌入flash,网页上嵌入Flash播放器(1)
  11. 最新鸽哒IM即时通讯系统源码+带安装教程,正常运行版,无报错
  12. 五 我们经常会忘记,要学会 走路 才能 奔跑,Python基础教程
  13. php仿qq登录界面安卓,Android_Android仿QQ登陆窗口实现原理,今天根据腾讯qq,我们做一个 - phpStudy...
  14. 维美儿 名画背后的故事 《戴珍珠耳环的少女》
  15. 2022-02-17 Android11 删除系统某种语言,我这里删掉粤语,修改frameworks/base/core/res/res/values/locale_config.xml里面的内容。
  16. 合肥市直计算机知识pdf,事业单位计算机专业知识整理(全)-20210419115129.pdf-原创力文档...
  17. AltiumDesigner的常用设计总结
  18. MTK 6761平台 android O bootloader启动之 Pre-loader - Lk
  19. 发送短信验证码到手机(阿里大于平台) java
  20. 动画演示15年来编程语言的起起伏伏

热门文章

  1. 电脑提示msvcr90.dll丢失的解决方法
  2. C++的第一个程序 helloword
  3. PCB板一般缺陷检测法及其优缺点分析
  4. 陶哲轩实分析--推荐
  5. python初始化二维矩阵
  6. 张瑞敏管理100句名言
  7. linux 全球用户数量,2019年6月全球桌面操作系统市场份额数据: Linux占1.55%
  8. terraform笔记
  9. 2020/1/31 关于mathtype6.9的安装 “我的第一次编辑
  10. 苹果技术历史规律分析