如何通过自学找到一份开发的工作?



01

学习过程

  1. 比较仔细的学习了《c++primer》,并对每个习题都自己写代码实现了一遍,包括稍微复杂一点的例子。

  2. 认真读完了《effective c++》,《effective stl》。

  3. 比较仔细的学完了《数据结构与算法分析》,并把其中的每种数据结构和算法都用c++实现了一遍。包括各种线性表,树(二叉树、AVL树、RB树的各种操作),图(BFS、DFS、prim、kruskal、djkstra、floyd、拓扑排序、关键路径等)查找算法,排序算法。

  4. 2-3个月认真学完《csapp》并做完书上的课后习题(由于时间的关系,没有在做家庭作业),顺带学习了一些gcc的嵌入汇编的用法。

  5. 读完了《深度探索C++对象模型》,对象C++底层实现机制有了一定的了解。

  6. 读完了《TCP IP详解卷一》

  7. 读了《APUE》的大部分内容以及《UNP卷一》有关TCP/UDP的部分,略过了SCTP的部分。

  8. 研究学习陈硕的muduo网络库源码,受益良多,在期间发现过其中的一两个小问题,提了几个pull request,研究完了muduo源码后又看了其相关的书《Linux多线程服务端编程 》

  9. 学习了云风的skynet网络库的小部分源码,主要为了了解actor模式和reactor的异同。

  10. 学习了google test框架的部分源码,弄懂了内部的的运行原理。

  11. 刷《剑指offer》的所有习题。

  12. 刷leetcode,代码在liyuan989/leetcode · GitHub,由于时间的关系大约刷了130道就开始找工作了。




02

关于练手项目

写了简易STL,C++协程库,以及一些http server,rpc之类的。




03

关于找工作

由于基本都是同学朋友内推,不存在简历被HR筛掉了。

其实自己都惊讶在找工作的时候有些异常顺利,因为面试官问的问题很少有答不上来的。绝大多数问题个人感觉不难,大多都是问的一些比较基础、底层的东西,比如互斥锁底层是怎么实现的?如何用C语言实现C++的异常,说说基本思路这样的问题。然后就是根据简历上写的东西来问。

另外一个要说的就是纸上手写算法题了,手写代码和机器上写代码的感觉不一样,我个人是没事自己在纸上写写一些基本的算法来熟悉,比如快排、堆排序之类的。

然后面试要问的算法题一般都不难,多数都是翻转链表,判断链表是否有环,回文数,找出链表倒数第k个数这样的题目。

很少遇到问二叉树的问题,没有遇到过问图的相关问题。唯一碰到一个动态规划的问题,就是最典型的最长公共子序列问题,难点的就是百度第一面最后问了一个leetcode上hard难度的原题,总的来说刷一些题还是很有必要的。




04

驱动力是什么

对于我来说驱动力就是兴趣和坚持吧,再一个就是有一种「做一件事就要把它做好的信念」。

讲一下我个人的两个经历。

在我中学的时候对篮球很有兴趣,但是刚开始的时候运球都运不稳,更别说上篮、突破、三威胁之类的高级动作了。然后我就在网上找到了张卫平老师的篮球教学系列视频,学基本的运球动作,投篮动作以及基本步法,在家里没事都会练练步法。每天晚上傍晚看不太清的时候都去练投篮找投篮感觉,然后看NBA学一两个实用的晃人、假动作技巧,再慢慢练习。最终在高中的时候进了当时的校篮球队,拿了当时市高中比赛的冠军。

另一个就是关于WOW了。高中毕业的时候被一帮从地球年代就开始玩的同学拉去玩WOW了,由于之前没有玩过类似WOW的网游,什么都不懂,完完全全的一个小白,一下副本就被队友、同学骂。然后呢,我就去NGA看各种攻略贴、精华帖、视频。仔细研究每一个技能的描述,冷却时间。慢慢的,下各种副本团队时候DPS都超过了我的同学,再到后来加入了服务器FD团队,拿过几个服务器首杀,单个BOSS的DPS排行也进过WOL全球前10。PVP方面也是的,开始在奥格门口是个人都能虐我,然后我每天观摩那些高手怎么放技能,怎么衔接,然后每天泡在奥格门口决斗练习,看NGA刀锋山的各种精华帖,看各种PVP视频,慢慢的在奥格门口几乎没有对手了,成为了所谓的门神。后来觉得决斗没意思,就开始玩竞技场,也是这样的一个学习过程,最后也打到了角斗士龙。



最后,我很喜欢刘未鹏先生说过的一句话,送给大家:

兴趣遍地都是,专注和持之以恒才是真正稀缺的。

转自:知乎 origin 的回答                                                                        https://www.zhihu.com/question/26421707/answer/53879709

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/304238.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

BeetleX使用bootstrap5开发SPA应用

在早期版本BeetleX.WebFamily只提供了vuejselement的集成,由于element只适合PC管理应用开发相对于移动应用适配则没这么方便。在新版本组件集成了bootstrap5可以更好地适配移动Web应用;同时也集成了Fontawesome和bootstrapIcons,这样在开发过程中使用字体…

Jupyter 常见可视化框架的选择

文末有福利!对于以Python作为技术栈的数据科学工作者,Jupyter是不得不提的数据报告工具。可能对于R社区而言,鼎鼎大名的ggplot2是常见的可视化框架,而大家对于Python,以及Jupyter为核心的交互式报告的可个视化方案就并…

AOP(面向切面编程)大概了解一下

前言上一篇在聊MemoryCache的时候,用到了Autofac提供的拦截器进行面向切面编程,很明显能体会到其优势,既然涉及到了,那就趁热打铁,一起来探探面向切面编程。正文1. 概述在软件业,AOP为Aspect Oriented Prog…

机器学习三部曲

随着科技的发展,计算机对人类的生产活动和社会活动产生了极为重要的影响,同时以强大的生命力飞速发展着。目前计算机正广泛用于社会各个领域,并朝着微型化、网络化、智能化和巨型化的方向前进。说到智能化,大家最先想到的应该就是…

AntDesign Pro + .NET Core 实现基于JWT的登录认证

很多同学说AgileConfig的UI实在是太丑了。我想想也是的,本来这个项目是我自己使用的,一开始甚至连UI都没有,全靠手动在数据库里修改数据。后来加上了UI也是使用了老掉牙的bootstrap3做为基础样式。前台框架也是使用了angularjs,同…

武汉大学计算机学院2019考研复试,2019年武汉大学硕士研究生复试及录取名单汇总...

原标题:2019年武汉大学硕士研究生复试及录取名单汇总考生可以通过录取名单了解到很多重要的信息,例如复试比例,进复试最低分,复试录取成绩,录取总评成绩等重要信息。以下是我们整理收集到的各学院复试录取名单汇总&…

ugui unity 取消选择_UGUI中几种不规则按钮的实现方式

前言UGUI中的按钮默认是矩形的,若要实现非矩形按钮该怎么做呢?比如这样的按钮:本文将介绍两种实现方式供大家选择。使用alphaHitTestMinimumThresholdImage类的alphaHitTestMinimumThreshold是一个浮点值,Raycast检测时只有图片中…

你的专业 VS 你妈口中你的专业

亲妈认证★英语语言文学我妈:她就是一个学英语的~我同学:你学英语的啊?那你看美剧不用看字幕的吧?你听英文歌都听得懂的吧?这个怎么翻译啊?这上面写的什么?你不是专八吗?哈喽~ 在吗&…

反射 + 抽象工厂模式切换不同的实现方法

概述工厂模式(Abstract Factory)定义 :提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂模式(Abstract Factory Pattern)是围绕一个超级工厂创建其他工厂。该超级工厂又称为其…

3 年工作经验程序员应有的技能

前言因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章。这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发的,因此有一部分内容也是专门面向咱们Java程序员的。第二阶段:五年五…

应急响应中的溯源方法

在发现有入侵者后,快速由守转攻,进行精准地溯源反制,收集攻击路径和攻击者身份信息,勾勒出完整的攻击者画像。 对内溯源与对内溯源 对内溯源:确认攻击者的行为 ,分析日志 数据包等; 对外溯源&…

POP3口令扫描案例

通过本案例可以学到: (1)了解POP3有关知识(2)利用Hscan工具软件来破解POP3账号和口令现在很多邮箱服务器都支持POP3功能,通过POP3来收取信件,收取信件时仅仅需要提供用户名和密码。目前有很多工具可以扫描POP3邮件账号和口令,本案…

中connect怎么用_烘焙中的各种酒,到底该怎么用?

​在烘焙食谱中,经常会出现“酒”这样材料。烘焙中的酒,仿佛是个神秘的存在,品种也繁多得让人一脸懵逼,朗姆酒是干嘛用的?怎么还有分白朗姆和金朗姆?和利口酒有什么区别?利口酒和力娇酒是同一个…

QQ旋风爆缓冲区溢出漏洞

据金山毒霸安全实验室5月7日透露,金山毒霸安全实验室研究人员进行例行漏洞检查过程中,发现QQ旋风存在一鲜为人知的缓冲区溢出0day漏洞,***者可以利用该漏洞制造恶意URL,使用IE6,7内核的各种浏览器均会受此漏洞的影响。…

w10计算机无法打印,win10升级后惠普无法打印怎么解决_win10升级后惠普打印不了的处理办法...

使用电脑工作或学习时,我们经常会需要用到打印机。可是最近有一些网友却反映说,自己的win10电脑在升级后出现了惠普无法打印的情况,这是怎么一回事呢?我们又该怎么解决呢?用户不是很清楚,所以对此今天本文为…

女神节爆猛料!. NET程序员男女比例公布!

今天是三八女神节,这里先祝广大的程序员妹子们节日快乐,健康美丽!有一个问题,相信很多.NET程序员都很感兴趣:.NET程序员中女生占比多少?先来公布答案:在本次调查中发现,.NET程序员群…

金蝶凭证序时簿在哪_来了!金蝶日常账务处理大全

上一期给宝宝们更新了金蝶软件建账的一些处理流程,宝宝们已经迫不及待要求后续了。在日常处理部分主要是以下几个方面一、凭证审核1.凭证录入点击主窗口中的【凭证】,单击【凭证】录入在凭证录入窗口中单击【凭证录入】按钮,在这个窗口中就可…

在C#中使用SQLite

SQLite 是一个嵌入式的关系数据库系统,使用十分广泛。在一些数据量不大的应用程序中,如果使用SQLite可以极大的减少部署时的工作量。 要在C#中使用SQLite也很简单,只要找一个C#的wrapper就可以了,例如,我使用的就是来自…

BI 界震动 - Power BI Premium 个人版只要每月 120 元

大事来了就在今天,微软宣布:Power BI Premium Per User 定价:每月 120 元人民币。我只能说:他没有骗人。Power BI 团队也在这个战略决策上符合了微软的核心使命。这一举措将更加彻底的巩固微软 Power BI 的商业智能帝国地位&#…

用 Python 实现一个大数据搜索引擎

搜索是大数据领域里常见的需求。Splunk和ELK分别是该领域在非开源和开源领域里的领导者。本文利用很少的Python代码实现了一个基本的数据搜索功能,试图让大家理解大数据搜索的基本原理。布隆过滤器 (Bloom Filter)第一步我们先要实现一个布隆…