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

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

3天内不再提示

一名程序员的思考与反省

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

扫码添加小助手

加入工程师交流群

子曰:吾十有五而志于学,三十而立,四十而不惑,五十而知天命,六十而耳顺,七十而从心所欲,不逾矩。人生又有几个十年?

距离三十还有7年。7年看似很长但也很短。或许有人说我过早的杞人忧天。

三十岁对于一个程序员来说,是一个警钟。虽然不少博文或者某些国外周刊说,有七八十岁的程序员,也有四五十岁的程序员,做一辈子的程序员没有什么不行。

但是那是国外。国内与国外的情形是不一样的。IT的技术更迭是很快的,你想要不断成长和强大,就需要不断的学习。作为年轻的我来说,特别是双休的时候,每天可以抽取八个小时的时间来学习。但是呢,

当我结婚生子后呢?我还能有那么多时间专注于学习吗?更多是陪伴自己的家人,教育孩子。

今天我主要说的话题是作为程序员有比写代码更重要的事情、不能仅仅只关注于自己的领域、要有忧患意识、要有理想等。

一、作为程序员有比写代码更重要的事情

那么到底什么是比写代码更重要的事情?

记住,这句话不仅仅对我自己说,也是对同在IT一线奋战的同志们说的:不要把自己看做码农。

记得我在之前的文章说过,写代码是思维运动,而不是体力运动。不要将脑力劳动变成体力劳动。

为什么这么说呢?

现在很多有三年甚至五年及其以上的工作经验的开发人员,但是有这么一个群体,仅仅只是将两年的工作经验或者是一年的工作经验重复到五年或者三年以上再或者更久。

我想这也是为什么有的企业在招聘网站招人有这么一条,拥有和工作年限相称的广度和深度。

如下图美团的Java高级工程师招聘:

或许有人说,这与你说的“作为程序员有比写代码更重要的事情”没有关系吧。

嗯,确实没有关系。但是我只是想强调一点。编码是一项脑力与体力相结合的工作,脑力为主,体力为辅。而不是体力为主,脑力为辅。

下面说说,作为程序员有比写代码更重要的事情。

首先我说说我的想法:

(1)作为程序员不能仅仅只关注于功能实现,还要深刻理解业务,明确一条,技术是实现业务的工具,技术固然重要,业务也一样重要,不要仅仅只关注于技术,而忽略业务;

(2)定期写文档总结,回顾自己在工作中对业务的理解和解决的问题,并将其写成文档或者博文的形式,内部分享或者是在不有损公司的利益情况下,分享给广大的IT朋友们;

(3)沟通,沟通很重要,特别是技术团队内部,不要埋头苦干,各自为战;

(4)锻炼身体,身体是革命的本钱,前段时间的新闻,让我心有余悸,特别作为在一线奋战的IT朋友们,一定要定期锻炼,就算不是跑步的形式,也应该去户外走走,徒步也是一种锻炼的方式,当然了,如果能跑步,或时常上下蹲、俯卧撑、仰卧起坐等等,也是不错的,锻炼身体能让你的大脑更灵活;

(5)要有一颗恒心,回顾我的IT学习生涯,如果不是一颗坚持的恒心,恐怕我和班上一部分同学一样,最后只能转行去做做搬运工、流水线、普通工人或者餐饮的服务员等等,这里我要强调一点,我这么说,并不是歧视这些人,而是要强调一点,想要在一个领域有所成就,必须要有一颗恒心,当然了,机遇也很重要;

(6)要有热情,你可以理解为兴趣,兴趣是最好的老师,要想在一个行业长久的发展下去,兴趣(热情)是很必要的,虽然有一万小时这样的理论,但是你要想有兴趣的长期坚持一件事情超过或者等于一万小时,或者是被动的坚持一件事情一万小时是完全不一样的,曾经选择IT,仅仅只是因为看上工资高,到后来慢慢喜欢上它,因为它就如生活一样,带给我酸、甜、苦、辣、咸;

这里我要反省的是,上面的想法我目前而言并没有完全做到,

谈到(1),当初开发软件时,我仅仅只是抱着功能实现就好,其他一切不管,最后的恶性循环是,不断的出现问题,不断的解决问题,同时呢?也不断的加班。最终的结果,就是因为自己的不负责任、不理解业务造成的。

谈到(2),定期写文档总结,的确,这个非常有必要,之前我说过,人的大脑容量是有限的,当然了,也不能忽略一些大脑容量超常的人,不过毕竟那些是少数人,所以,作为大多数的人来说,无论是工作中还是学习中,定期总结和回顾是很有必要的,比如,我们Java团队在与安卓团队对接时,有些接口相关的请求url、请求参数、响应参数,时常因为彼此不记得翻代码找半天,这一点双方都有自己的责任,作为Java研发团队中的一员,我们的责任是没有及时记录,以至于找的时候花费很多不必要的时间。虽然说,接口写文档是一件麻烦的事情,但是用一个叫Swagger的工具是可以完全实现自动化的,这个工作是我的,还是因为我的不负责任,没有管它放任自如,我还是要反省自己。

谈到(3),沟通很重要,我发现在实际开发中,bug出现的概率高的原因,除了我们没有深刻的理解业务之外,还有就是沟通,我们沟通太少了,以至于时常因为这个那个浪费很多不必要的时间。曾经的我,之所以选择了IT,是因为我不喜欢和人打交道,仅仅只想着,“鸡犬相闻,老死不相往来”,,最好是大家各自干各的,都不管彼此。事实证明我是错的,每个人对每一块的业务模块,理解是不一样的,有的理解深,有的理解浅,通过沟通可以彼此互补,技术也是如此。在软件开发整个流程,无论是曾经的瀑布模型,现在的逆向瀑布模型,还是现在的敏捷模型,软件的成功因素,不仅仅取决于业务的前景和好的商业模型,更取决于整个团队的良好协作,本质上可以理解为沟通二字。

谈到(4),还有一点我遗漏了,那就是少熬夜和不熬夜,现在我很年轻才23岁,记得在上家公司工作的时候,经常是2点到3点才睡,那段时间也是没有办法的事情,因为我所面临的,不仅仅是生存上的危机,还有来自很多外部的压力,包括我什么都不会,一切从头来过和一些其他因素等。当我解决了生存危机后,感觉身体其实也没有什么,有段时间,我确实有点堕落了,享乐主义的思想逐渐占据了我的大脑,熬夜看一些没有营养的电子书(什么修仙、霸道总裁等等)或者是看看娱乐电影等等。但是后来被一个人无情的打击下,我逐渐醒悟。

前面说的,或许与少熬夜和锻炼身体没有关系,但是我觉得享乐主义的思想是造成熬夜及其很少或者不锻炼身体的原因之一。

谈到(5),要有一颗恒心,我同广大的朋友们,都一样,没有深厚的背景关系,也没有富裕的家庭。有人说,这个世界上充满着不公平。在我看来,借用《深度思维》中的某句话所说的那样,这个世界有两个东西是公平的,一个是大脑思想和时间。虽说现在少年得志的人不少,比如前段时间受邀参加某个酒会,遇到不少年轻有为的CEO等。但是那只是少数人。更多的平凡人,其实也可以成功。只不过需要沉得下心,并不断坚持的去做一件事情,可以是兴趣爱好,也可以是职业。这个时代既是物价飞涨的时代,也是充满机遇的时代。有人通过自己的兴趣爱好而获得成功,也有的通过专注与职业而获得机遇取得了成功。成功并不是偶然的,也有其必然的因素。

谈到(6),热情或者是兴趣,热情对我来说也可以等同于兴趣。对一件事情十分有兴趣,就会不断有动力去做。作为IT界中的一员,IT的技术不断更迭,你想不落后,不仅仅只是靠挤时间去学,而且也要有兴趣,有热情去做。不然毫无兴趣的去做一件事情,效率不高,也浪费时间。很多人总说,没有时间去学习,包括我自己也说过很多次,其实那都是借口,因为自己不想去做,也不愿意去做,更没有兴趣去做,何谈热情去做呢?

二、不要仅仅只关注自己的领域

不要仅仅只关注自己的领域,为什么要这样的说呢?

原因有如下几个方面?

(1)容易陷入偏狭,一叶而障目;

(2)我们需要了解业务领域的知识(比如做金融相关的开发,需要了解和熟悉金融的,做区块链的,需要了解区块链相关的知识等等),同时也不能仅仅为了业务而去学,平常也要有意识的去拓展自己的知识领域,就我而言,我对理财、文学、产品、物联网等感兴趣,我就会去看看相关的书籍和资料;

(3)借用吴军先生的《见识》所说的那样,你能走多远,取决于你的见识;

其实这三个原因归纳下来,可以用一句话表示,那就是眼界的深度与广度,不仅仅决定你的职业发展,同时也决定了你的未来。

我给自己的建议,也给他人的建议如下:

(1)多多阅读,特别是对工作时间长,休息时间短的朋友们来说,阅读是获取知识的最佳途径之一,阅读不同的书籍,你可以领略不同人的思想或者是不同的行业,也可以是你自己的不同感受,说句惭愧的,我也有很久没有看书了,只是最近觉得,我不能仅仅只关注代码和学习新的框架或是深度研究现有的框架原理等等,还得去了解这个世界不一样的东西或者是这个世界不一样的地方;

(2)沟通,不能仅仅只阅读而不沟通,沟通能提高你的表达能力,同时通过沟通,也能学习对方的看待问题的方式及其获取对方领域的知识(当然了,沟通也没有坏处),特别是广大的IT同胞们,如果表达能力不行的话,找女朋友不好找啊,每次朋友圈看着秀恩爱的那群家伙们,心中总是有种莫名的愤怒,哈哈,稍微幽默下;

再贴个图:

阅读和沟通,不仅仅使你能扩大自己的知识领域的广度,还能给你遇到问题时,会有很多的解决问题的思路和方式。这里也要提到积累也很重要。

上图中有四个红色标记处,前两个,你觉得你没有想过的积累,你觉得你能够胜任吗?或许可以试一试。这个世界上,没有你想做而做不到的。关键是前面说到过的恒心。长久的阅读积累和沟通和技术的沉淀,总会给你带来意向不到的惊喜和机会。

三、要有忧患意识

居安而思危。不要仅仅只满足与安逸的环境下,有一点我要反省我自己,有段时间我确实有点放任自如了,觉得自己身处现在的岗位,就有些得意忘形。

人工智能的发展是非常的迅速,编码以后也会被机器人取代的。这个可能是未来的趋势之一。先不说这个,再说近的,现在的培训机构层出不穷。培养了大批的软件开发工程师,同时现在的大学生,专科的、本科的、研究生或者博士越来越多,你还觉得你所处环境很好吗?这句话是对我自己的说的。“我们不要仅仅只满足于现在,还有着眼于未来“,这句话人人都知道。但没有几个人做到?我想这也是贫富差距的原因之一。

下面我要说出我自己的想法,同时也是给我自己的建议,广大的朋友可以参考:

(1)要有职业规划;

(2)要培养自己的核心竞争力;

(3)既不要妄自菲薄,也不要骄傲自满;

(4)实事求是;

谈到(1),Java开发工程师的职业规范一般为如下:

初级开发工程师-》中级开发工程师-》高级开发工程师-》架构师/项目经理-》技术总监-》CTO

同时也可以变成这样

初级开发工程师-》中级开发工程师-》高级开发工程师-》产品经理-》产品总监

还可以变成这样

初级开发工程师-》中级开发工程师-》高级开发工程师-》技术合伙人(参与创业)

职业规划,意味着你知道自己的下一步想做什么,有个目标总比没目标强。很多人说自己迷茫,包括我自己也一样。其实一点都比迷茫,只不过是为了逃避自己的责任罢了。

比如我,记得有段时间,经理想让我做TeamLeader,但是我当时畏惧了,因为我怕同事们不配合我,同时也怕自己万一搞砸了失去这份工作怎么办,还怕自己因为对于别人代码不熟和业务不理解被嘲笑等担忧。这些担心固然有一定的道理,但是换个角度来看,同事们不一定会不配合你,只要你做事负责任,搞砸了也不可怕,最重要的是你努力去做,不熟悉和不理解,可以通过熟悉和理解(尝试通过与同事及其领导沟通来达到理解业务的目的等等)。在这里我想强调一点,缺乏勇气去尝试,意味着你一辈子只能默默无闻,其实归根到底就是因为不想担责任,缺乏责任感。

在工作中,我想每个人都会遇到这样的场景或者是这样的人,比如某某人和某某人一起工作,突然某某人被领导提拔,而那个人觉得自己工作能力不错,为什么提拔的不是他(她),而是他(她)呢?很多人,包括我自己遇到一些问题和事情,最先想的不是如何解决,而是如何推卸责任。这一点,我真的要很反思。再比如恋爱中的情侣们,当在一起的一段时间里,男方总会以自己的想法为由,大男子主义,往往忽略的女方,最后分手了,总是说,为什么会这样,不是我的错。往往总是从自己的角度上看,而不换位思考。无论是工作中,领导总会给员工们升职的机会,或者你在追求某某人时,某某人总会给你的机会,只不过每次你都错过了,任何事情看似偶然,实则必然。

接下来,我希望自己不仅仅要有明确的行动去实现职业规划中的目标,还希望自己在人际交往中,无论是团队,还是追求某人或者和某人在一起,都要尽可能的换位思考。

谈到(2),要有自己的核心竞争力?

记得看过一篇文章中说过,随着IT的门槛相对而言,越来越低,开发人员越来越多,伴随着质量普遍不是特别高,我知道我说这句话,会有不少人喷我。但是事实就是这样,开发人员流动性很强,跳槽更是普遍,写代码不规范(除了一些大中公司有一定的代码规范约束,其他中小公司一般没有什么规范,全靠自觉,包括我自己代码也写的是乱七八糟,不过意识到这一点后,我尝试着让自己的代码可读性变好,改进自己的代码,业界中Java开发的代码规范,我觉得阿里巴巴的Java开发守则值得参考),仅仅只是关注用技术实现业务,很少深入理解业务,觉得理不理解业务不关自己的事情。

看下图,我列举的几个招聘网站上的例子:

图一:

图二:

通过图一和图二,我只想表明两个观点:

第一、程序员的核心竞争力,不仅仅来自技术上的积累,还来自业务,技术是实现业务的工具,业务是用来赚钱,没有业务,技术也毫无用场;

第二、随着现在程序员越来越多,你要想不被淘汰,你要有意识的培养自己在某个领域的深度,可以是技术,比如分布式的研究,存储等,也可以是业务,尽管你的技术不是非常牛逼,但是你对业务的深度理解,有助于进入业务对口公司;

记得看过阿里的某位技术人的文章,提到过,你对业务架构的价值领会的深度与广度决定你身处的位置。在这里还是要强调一点,程序员不能仅仅只关注技术,而忽略业务。如果你还想更进一步,业务是必须的。

总而言之,程序员的出路可以有很多,你可以选择到30岁以后或者不到30岁去培训机构当老师,还可以自主创业(当然了创业有风险),还可以一直专注某项技术成为领域专家,也可以进阶到管理层面。

出路有很多,关键是出路是否长远。这个需要自己深度思考。

谈到(3),既不要妄自菲薄,也不要骄傲自满。很多人,也包括我自己看到比自己强的人,会有点自卑,同时也伴随着嫉妒。如果要说怎么解决?答案是有很多解决方案。你可以选择去向比自己厉害的人学习,也可以选择给自己定一个小小目标,然后慢慢实现一个有一个,当然了,还可以选择无视(不过你觉得你能无视吗,我是不能,嫉妒也不能解决问题,解决问题的最佳方式是面对问题,这就好像人与人之间交际的过程中遇到问题时,问题并不是拖着解决的,而是通过面对解决的。骄傲自满更是要不得,不要觉得老子天下第一,世界上比你强的人多的是,我曾经也因为自己写过某段程序,而别人没有写出来而沾沾自喜。到最后发现那些都是屁,没什么好沾沾自喜的或是狂妄。我觉得还需要学习很多。未来还有很长,但是也不是那么很长,我希望自己能够虚心而不自大,乐于助人,乐于助人在于彼此提高。

谈到(4),实事求是很重要,不要给自己定一个难以实现的目标,那样既不现实,也会挫伤自信心。就像《深度思维》的作者说过,既然不能少年得志,那么大器晚成也是很不错的。

我还想强调一点,成长比金钱更重要,特别是对于工作年限不长的朋友们,当眼前的工资足以解决自己的温饱时。有不少IT朋友们,是因为发现无法在这家公司获得更多的成长时离职,也有是工资给的不到位,还有的是觉得太累的。不过我最想给自己的一句话是,在一家公司觉得自己有很大的成长空间时,可以暂时忽略来自外部的巨大诱惑,好好专注自己的领域,提高自己。

这篇文章我一直想写,但是每次落笔时,无法进行下去,因为难以静心。其实这次写也是难以静心,但是写的过程中逐渐使我的心慢慢静下来,同时思绪也打开了很多,即给自己看,又给广大的IT朋友们或者是即将进入IT界的大学生们看。

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

    关注

    4

    文章

    956

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何成为一名高薪嵌入式工程师?

    学嵌入式,也可以轻松入门。 如果你已经明确好,想要从事嵌入式开发,想要成为一名高薪的嵌入式工程师,那下面这几点建议请好好看看: 、夯实技术基础 ✅编程语言 C语言:嵌入式开发的核心语言,需
    发表于 04-09 09:03

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

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

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

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

    隼眼科技获得第六届综合交通创新创业大赛总决赛第一名

    由中交集团举办的第六届综合交通创新创业大赛总决赛于12月16日落下帷幕,隼眼科技参赛的“基于92-94GHz毫米波雷达的全天候感知系统”获得了第一名的好成绩。
    的头像 发表于 12-18 17:07 763次阅读

    程序员最常见谎言

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

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

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

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

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

    亿纬锂能荣膺AQR新能源乘用车电池系统供应商质量表现第一名

    2025年9月25日,2025年中国汽车产品质量表现研究(AQR)结果发布暨颁奖典礼在北京隆重举行。亿纬锂能凭借卓越的产品质量表现,荣获 "新能源乘用车电池系统供应商质量表现第一名" 奖项,亿纬锂能质量中心副总裁施诺受邀出席典礼并代表公司领奖。
    的头像 发表于 10-21 18:00 1762次阅读

    飞凌嵌入式ElfBoard-常用编辑器之Vim编辑器

    在Linux下我们对文本进行编辑,经常用到的编辑器就是Vi/Vim, Vi/Vim命令众多,功能强大,是大多数Linux程序员选择使用的编辑器。但是Vi/Vim没有图形界面,对于经常在windows
    发表于 10-13 08:47

    东风本田CR-V荣获2025合资SUV质量体验第一名

    近日,2025年中国汽车产品质量表现研究(AQR)结果发布暨颁奖典礼圆满落幕。东风本田CR-V凭借卓越的质量表现,荣获“合资SUV质量体验第一名”的桂冠,这权威奖项不仅是对东风本田CR-V的肯定,更是对品牌在质量、品质等方面多年坚守“长期主义”的最佳褒奖。
    的头像 发表于 10-09 09:56 730次阅读

    作为一名PCB质检工程师,我为什么在用手持式面铜测试仪?

    在PCB行业,铜厚直是决定阻抗、散热与可靠性的关键指标。过去,工程师把板子搬到实验室、等待台式铜厚仪出结果;作为一名PCB质检工程师,如今,我更愿意把“实验室”揣进口袋——手持式面铜测试仪正在成为
    发表于 08-11 11:59

    软通动力斩获2024年中国IT服务市场份额第一名

    近日,赛迪顾问发布《2024-2025年中国信息技术服务市场研究年度报告》。软通动力凭借在智能化转型浪潮中的卓越表现,以领先的数智化能力持续领跑中国IT服务市场,不仅斩获2024年市场份额第一名,更在IT咨询、IT运维等核心领域巩固优势,综合竞争力持续提升。
    的头像 发表于 08-01 17:53 2089次阅读

    润和软件稳居数字业务类解决方案市场第一名

    ”)凭借自身卓越的技术实力和创新能力,连续五年稳居数字业务类解决方案市场第一名;在细分领域:数字信贷系统解决方案子市场持续保持第一名,数字银行解决方案子市场跃升至第一名。同时,其在开放银行、交易银行、智能营销、智能风控、数据智能
    的头像 发表于 07-14 17:36 1478次阅读

    华为荣登GlobalData运营商基础设施管理服务排名报告Leader象限第一名

    象限第一名。 报告对通信服务商从商业模式、解决方案、网络设计与优化、网络转型能力、服务规模、和业务敏捷性六个维度进行了全面评估,华为综合得分第。这印证了华为在对全球运营商客户提供领先服务解决方案、网络极致性能和数智化转型等方面做出了卓越
    的头像 发表于 05-22 18:43 1221次阅读
    华为荣登GlobalData运营商基础设施管理服务排名报告Leader象限第<b class='flag-5'>一名</b>

    程序设计与数据结构

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