0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一位程序员的五年工作感悟

工程师人生 来源:工程师吴畏 2018-12-20 14:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言,

一晃,做了五年多的程序员了,感觉自己应该是程序员大军中比较典型的一个,班科生毕业,直接加入了软件开发的行列,先是小公司,然后大公司,走了一条典型的程序员的路线。

虽然我不是大牛,但是感觉在我这样普通程序员身上所能得出的一些结论可能更加适合广大的程序员兄弟们,让我们在程序开发的路上,共勉。

话说,五年前,我是一只小小鸟,一头扎进了dot Net开发的丛林,没能变成猎手,却险些变成了猎枪下的亡魂。..

回首往事,曾经有过太多的经验和教训,现总结如下:

一、要想飞的更高,我需要一双有力的翅膀。..

一双有力的翅膀,是飞行的最基本的支撑和前提。

那什么是程序开发的最基本的支撑呢,个人感觉是构建一个完整的关于开发的知识体系和程序员应该具备的最基本能力。

1. 知识体系

知识体系无非就是支撑你软件开发的那些最基本知识,也可以说是技术的路线图。

例如你可以参考园子里的大牛Anytao的路线图,应该会有一些体会。

清楚自己的知识体系的好处是可以时刻提醒自己在哪些方向上有所欠缺,在哪些方向上有相应的优势,并且更容易对自己的技能有个良好的把握。

关于这方面的东西就不多说了,下面说几个构建知识体系时的个人心得。

1.分清楚知识的核心和扩展

每项知识都有其核心价值与相应的扩展体系。

核心价值决定了技术的应用方向,而扩展体系决定了技术的外在表现。个人的意见是抓核心,适当的放弃某些扩展,比如asp.net你更应该了解页面周期而不是某些控件的具体使用。

了解了核心价值有助于我们对某样技术有深刻的理解。

拿语言举例,如果将语言分为命令式和函数式,那么我们就应该知道命令式语言的核心本质就是通过操作指令去改变内存中的数据,而函数式语言的核心就是通过不断的函数求值以得到结果。

明确了这些核心对于我们对语言的了解有显著的作用,我们也就明白了为什么汇编语言的指令一般都是 “mov ax,1”这样的语句。

BTW:对于一个dot net程序员而言,如果不理解framework,不了解framework的构成,不了解一些基本的概念,比如”CLR,CTS,GAC“之类的东西,很难想象这样的人会是一个成功的dot net程序员。

记得有一次和一个同事聊天,我说如果没看过《Microsoft .NET框架程序设计》这本书,我就不确定你对于dot net能有深入的了解。

其实我的本意是想说,《Microsoft .NET框架程序设计》这本书,会在某种程度上极大的帮助你构建dot net framework的知识体系,这本书好就好在不是讲c#或者vb这些语言,而是讲framework这个框架。当然,不看这本书你也能打造一个良好的framework的知识体系,只是相对来说要麻烦一些,没有这本书这样的系统。

2.通过内联和外延梳理自己的知识体系

技术与技术之间都有着相应的联系,通过互相对比我们能够清晰的加深对技术的理解。

比如WPF和HTML都是通过markup的方式构建界面,再比如WebService和Remoting都是通信方式,只是具体的方式和信道不同。

再比如Flex和SilverLight的区别和差异。

甚至你可以通过对比Java和C#两种语言来看语言设计上的一些异同,比如java为什么默认的就是虚函数,而C#默认的不是,通过这些对比,你更容易发现这两种语言设计时的思路。

3.审慎的对待IT技术的走向和潮流

软件开发是个不断更新的职业,其新技术更新之快远超传统行业,也经常看到很多人抱怨技术更新过快没有时间学习之类的,其实在我个人看来,新技术的到来远没有那么可怕。

当你有完整的技术体系,明确其中各种技术的联系,你会发现你对于新技术会有更明确的定位与预判。

举个例子,微软出了个新技术WPF,那么,它是干什么用的呢,一种通过标签描述windows界面的表示技术,这时你自然就会想起Windows Client,想起HTML,在比较它们之间的异同,你就会很清晰的明确WPF这种技术所适用的场合和大概的优缺点,那么到了这个时候你会发现,你缺少的就完全是对于WPF的熟练度和技巧了。

2. 程序员的基本能力

什么是程序员应该具备的基本能力呢,下面是我的总结:(这个问题肯定每个人都有自己的看法,下面只是我个人的总结)

编程语言的掌握能力

一个良好的程序员肯定要熟悉一种或几种编程语言,同时对各种主流编程语言有一定的了解。

操作文本的能力

最基本的能力之一。

操纵shell的能力

这是证明你是一个程序员而不是一个普通人的最简单办法了,你看过一般电脑的操纵者会玩shell吗?

更何况shell在某些场景下能给我们巨大的帮助。

操纵IDE的能力

IDE类似于战士手里的枪,玩不好枪你当什么战士?

单元测试的能力

太多的程序员不在乎单元测试了,要知道这是证明你的工作成果是正确的唯一方式,我想,有这一条就足够说明单元测试的重要性了。

文档的能力

有人很不在乎这个,其实,想说的是,有很多时候文档是体现你价值的最重要的工具。不理解?想想你的项目经理们是不是都能做出非常漂亮的ppt,你就知道差距了。还不明白,文档可是交付物之一,也就是产品中的一部分,想想你买个漂亮的家用电器,却又一个非常丑陋的包装的情景,你就应该明白了。

二、要想飞的更远,我需要混入一个团队。..

大雁是我知道迁徙类中飞的最牛b的鸟类了,因为它们总是能在天空中排成美丽的S形,美丽的B形。..:) 我相信在这样的团队中,你只要混进去,也就可以很容易的排成那些美丽的形状。

其实这里的团队不是通俗意义上的团队,而是圈子的概念,程序员也有程序员的圈子,积极的融入这些圈子,总会有一些好处。

举个例子,在去年,我想换工作的时候,就得到了园子里面”Nick Wang“和“Lbq”的极大帮助,其实我和他们素未相识,但是不得不说程序员真的是很热心,很纯洁的一帮人,有这样的一帮人作为同职业者,对于我们每个人来说,都是一种幸运。

人都是群居动物,社交对于每个人都非常的重要,ok,下面说说我对圈子的一些小看法。

1.在广义的圈子里

所谓的广义的圈子,指的是相对而言一个比较大的范围,可以是网络,或者一个邮件group。

有一个很重要的事情就是在这样的一个圈子里,不要做一个只得到不分享的人。

如果你只获取不分享至少有两个坏处,

第一 就是你不能收获最大,这点我深有感触,我加入博客园是05年,貌似属于比较早的了,可是最开始的时候感觉自己很是幼稚,不敢分享自己的观点和体会,于是直到07年我才敢发自己的第一篇随笔,如果早早分享的话,我想我会有更大的提高。

第二 对于任意一个组织,当获取超过分享的时候,这个组织也将会走向灭亡了。

2.在狭义的圈子里

这个很简单,就是你工作的城市,你工作的公司,如果你想在一个城市里面混,程序员的圈子说大很大,说小其实也很小,如何让这个圈子里的人认可你的能力,是很重要的。

记得有个前同事问我说他将来会不会失业,我当时就告诉他,以他的能力,他不可能失业,但是以他的人际圈子,他很有可能混不“上”去,因为他的圈子太窄了,如果不能在现在的公司得到认可,他很可能连去其它公司展示自己能力的机会都没有。..

是不是很现实,但是社会往往就是这样现实,想想吧,如果你想去某个公司,里面有个了解你能力的人,赏识你能力的人对你会有怎样的帮助。

三、我该朝哪个方向飞,当我们面对选择。..

对技术迷茫过?动摇过?很正常,每个人都有过这样的困惑,审慎的对待自己的性格、能力,并作出合理的选择是我们这代人需要面对的问题之一,我们没有可以参考的目标(对于软件行业而言,在国内从无到有也才那么10几年时间,自然没有什么参考对象),也不像我们的父辈一样无法选择,展现在我们面前的是一条更加宽广的路,也是一条充满了荆棘的路,所以,选择也就更加的重要了。

我不知道别人是如何选择的,说下自己的心路历程吧,在04年的时候我做出了第一次选择,

一,选择.net,其实当时的原因很简单,只是因为看“Microsoft .NET框架程序设计”时的一句话,微软为未来的10年准备了Dot Net,你呢?当时被这句话深深的打动,于是毅然决然的选择了.net。

二,没有选择日本外包,而是选择了当时在大连还是才起步的欧美外包,选择的理由也很简单,英语永远比日语说的人多,在外包一个这样语言至上的行业里,学习英语远比日语来的划算。

到现在,虽然没有证明当年的选择是正确的,但是既然是自己选择的,那么就想一直坚持走下去。

第二次选择是在08年,从一个小企业到了一个大企业,虽然对当时的团队也很是不舍,但是我却知道,按照自己的性格,既然不能走向管理,那么只能走向一个大的团队,这样才能保证自己的职业生涯更稳固。

如今,即将面临第三次选择,一个正规化、专业化的开发团队,这样才能让自己在职业的道路上走的更远。

最后想说的是,人生,无时无刻不在选择着,其实选择不重要,重要的是做出选择之后按照自己的选择并坚持走下去。

四、一些额外的东西

1外语能力

作为程序员,没有出色的英语永远是二流的角色,没办法,人就要适应环境,而最先进的代表生产力的东西貌似现在很多都是E文的,既然没的选择,那就学呗。

2管理能力

在程序员中,感觉想走管理路线的人应该占大部分,那么储备一点管理的知识吧,机会永远垂青那些有准备的人。

还想说句话,其实不是每个人都适合管理的角色,自己也曾经参与过一定的管理工作,但是感觉性格上很不适应,于是放弃,依然选择在技术上起伏,某些时候放弃更重要。

3突出重围

不想泯然众人,不想永远做人后之人?看看xiaotie的这篇文章《突出重围》,个人感觉很精彩。

最后,

程序员不过是三百六十行中的一行罢了(算不算在三百六十行中我还不知道),无非就是一种职业,它不比其它职业来的高贵,也不比其它职业来的低贱,无非是你获取报酬用来支持你生活的一种方式。

如果你真心的热爱这个行业,那么就持之以恒的在程序开发这条路上走下去吧,其实无论你选择了哪个行业,只要坚定不移的走下去,总会找到属于自己的那片天空!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序员
    +关注

    关注

    4

    文章

    956

    浏览量

    31007
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    铸剑・共敲开市锣|一位工程师与美格智能的“A+H”新征程

    。庄重的仪式过程中,有这样幕让在场的许多人印象深刻:与其他公司的上市仪式不同,在最重要的8登台嘉宾中,美格智能的一位轻工程师,作为全公司800多名工程师的代表,
    的头像 发表于 03-19 19:05 1139次阅读
    十<b class='flag-5'>年</b>铸剑・共敲开市锣|<b class='flag-5'>一位</b>工程师与美格智能的“A+H”新征程

    海康威视推出基于自研观澜工业大模型的包装配件AI质检

    今天,给大家介绍一位“新同事”,TA就是海康威视新上岗的包装配件“AI质检”,这位“新同事”来头可不小——“背靠”海康观澜工业大模型能力,即使面对海康威视工厂配件包装体量大、规格多变的复杂场景,也能精准识别配件错放、漏放问题并实时拦截风险。
    的头像 发表于 02-02 10:03 953次阅读

    铁路乘务手持检票智能终端PDA是什么?其大核心功能全解析

    本文将深入解析火车/高铁乘务手中的“工作神机”,全能型手持检票智能终端(PDA)。它如何在个手掌大小的设备中,完美融合身份证识别、护照读取、极速验票、智能巡检与实时通信大核心功能
    的头像 发表于 01-15 14:39 323次阅读
    铁路乘务<b class='flag-5'>员</b>手持检票智能终端PDA是什么?其<b class='flag-5'>五</b>大核心功能全解析

    芯盾时代SDP助力企业应对核心机密泄露危机

    无论你是程序员、文案、财务,无论你想撸代码、出海报、做报表,各式各样的AI总能满足你的需求,让你的工作更加轻松。
    的头像 发表于 12-26 11:49 851次阅读

    大理的AI野心藏不住了——风花雪月中千名程序员探讨人工智能

    2025 12月4日至6日第二届CCF程序员大会暨大理人工智能与应用国际开发者大会在大理圆满落幕。
    的头像 发表于 12-24 17:45 893次阅读
    大理的AI野心藏不住了——风花雪月中千名<b class='flag-5'>程序员</b>探讨人工智能

    文浅谈2026大趋势

      -       IBM 商业价值研究院发布商业领袖需要关注的大趋势 北京, Dec. 15, 2025 /PRNewswire/ -- 近日,IBM商业价值研究院发布 《2026
    的头像 发表于 12-15 17:09 987次阅读
    <b class='flag-5'>一</b>文浅谈2026<b class='flag-5'>年</b><b class='flag-5'>五</b>大趋势

    程序员最常见谎言

    了。 28我已经测试过了,这个功能没问题,可以上线了。 29别担心,这个问题很快就能解决。 30代码快写完了,已经完成 90% 了 。 希望大家对程序员些容忍以及谅解! 各位程序员你们都被我说中了哪些?说说你们的观点
    发表于 12-10 08:24

    软通国际亮相2025沙中开源与AI科技峰会

    202511月11日,由沙特程序员协会(parmg)主办的"2025沙中开源与AI科技峰会"在利雅得盛大启幕。
    的头像 发表于 11-14 17:45 1606次阅读

    景嘉微连续荣获深交所信息披露工作A级评价

    近日,深圳证券交易所(以下简称“深交所”)依据《深圳证券交易所上市公司自律监管指引第11号——信息披露工作评价(2025修订)》,正式发布创业板上市公司2024-2025度信息披露工作
    的头像 发表于 11-05 16:20 924次阅读

    奔赴热AI,码力全开!Talkweb House@1024程序员日系列活动圆满收官

    1024程序员日”系列活动至此划上了个圆满句号。本届1024程序员节以“AI构建世界,智能引领未来”为主题,广邀技术大咖、产业领袖、企业代表与全球开发者齐聚星城
    的头像 发表于 10-27 18:59 968次阅读
    奔赴热AI,码力全开!Talkweb House@1024<b class='flag-5'>程序员</b>日系列活动圆满收官

    开鸿智谷“以赛促学、以赛选才”|1024程序员节暨开源鸿蒙构建大会圆满落幕!

    10月24日,由开鸿智谷联合主办的长沙1024程序员节暨开源鸿蒙构建大会在长沙圆满落幕。本次活动以“湘聚长沙,共赴热AI”为主题,通过技术分享与实战竞赛相结合的方式,着力培养“开源鸿蒙+AI”领域
    的头像 发表于 10-27 17:58 864次阅读
    开鸿智谷“以赛促学、以赛选才”|1024<b class='flag-5'>程序员</b>节暨开源鸿蒙构建大会圆满落幕!

    星光不负,码向未来:1024致敬每一位“以码为梦”的鸿蒙开发者

    行代码,都是照亮数字世界的颗星;每个梦想,都值得被温柔以待。这不是场简单的庆祝,而是次真挚的致敬。在1024
    的头像 发表于 10-24 18:47 350次阅读
    星光不负,码向未来:1024致敬每<b class='flag-5'>一位</b>“以码为梦”的鸿蒙开发者

    龙智获Atlassian星合作伙伴评级,树立服务新标杆

    ✅Atlassian官方认证✅客户星好评✅大中华区独家——龙智,你的企业数字化合作伙伴。感谢每一位客户,也致敬每一位全力以赴的龙智伙伴!我们直在路上。
    的头像 发表于 08-29 17:41 1140次阅读
    龙智获Atlassian<b class='flag-5'>五</b>星合作伙伴评级,树立服务新标杆

    匠人手记:个单片机工作者的实践与思考

    本文是作者在从事单片机开发与应用的过程中,将实际经验教训和心得感悟加以总结,整理而成的工作手记。每篇手记论述个专题独立成篇,同时又相互关联。全书内容包含入门基础、经验技巧、设计案例、网络杂文等四个部分。获取完整文档资料可下载附
    发表于 05-27 15:53

    程序设计与数据结构

    的地址)出发,采用推导的方式,深入浅出的分析了广大C程序员学习和开发中遇到的难点。 2. 从方法论的高度对C语言在数据结构和算法方面的应用进行了深入讲解和阐述。 3. 讲解了绝大多数C程序员开发
    发表于 05-13 16:45