一位年轻而优秀的.NET开发者的成长点滴
一,社区的小圈子
今年3月的一次技术交流活动上,那是我们.NET技术社区第一次组织线下活动,由于没什么经验,所以活动组织得比较仓促,内容也比较一般,效果还是有点欠缺。当然,活动本身是必要的,这次活动上有幸认识了许多长沙的优秀开发者,这让我非常的高兴。
事实上搞技术活动,与其说是交流技术,倒不如说是扩大圈子,交流感情,认识更多的朋友。毕竟每个职场人往往圈子都是固定的,哪怕是在大公司,真正经常来往的朋友其实也不过三两人而已。但是在北上广深的大城市,往往有时候刚刚认识几个朋友,对方可能就离开了,这也是一种遗憾。相对而言,在小城市或许也相对容易形成更加稳定的精准小圈子,这也是我认为一个社区存在的最大价值。
小城市的职业发展方向大概都是一样的,从入门级小程序员出发,然后到高级程序员,再到项目经理,然后逐渐脱离技术的主航道,直到被技术抛弃。有朋友戏谑道,长沙的程序员大概率都是一样的,靠经验的简单复制、依靠人际关系技巧或者靠资历,而真正钻研技术的非常少。
哪怕有许多开发者得以突破转到了项目管理或其他方向,也很难能够在专业领域能够进一步的发展。毕竟首先企业大环境决定了个人的职业选择,其次就是很少有开发者能够明白的看清自己的职业发展规划,为了钱而生存无可厚非,然后整个职业生涯都迷迷茫茫,只能导致最终到了一定的年纪,就开始原地踏步了。
二、周杰的成长历程
而公众号DotNet骚操作的作者周杰是参加了我们第一次活动的三十位开发者中的一位,也是小城市中少有的对技术始终保持热心的优秀开发者。
事实上很多年前(三年前)我就对他的名字有所耳闻,我的好几个朋友都说他的生活除了工作,家庭,剩下的就都是技术,是一个不折不扣的.NET技术狂。
不过由于当时我主要是沉浸于小行业应用的泥坑之中,还不能体会.NET技术作为基础技术的巨大价值,自然而然相对来说比较无感。直到从泥坑中出来才能深深体会到技术的无穷魅力,也才真正理解在长沙这座城市,能够踏踏实实的以.NET技术作为自己的核心竞争力的开发者是何其的珍贵。
当时的他的公众号【DotNet骚操作】还没开,以前他经常做开源项目。与许多内地城市的开源项目参与者热衷于刷开源项目,以fork了哪些项目贡献了多少文档的形式相比,他更倾向于自己造轮子。在他的github仓库(https://github.com/sdcb)中还有许多各种各样的开源项目,这些都是他一点一滴的积累,几乎每个方法都会认真考虑代码背后的实现逻辑和性能优化,这些小巧玲珑、性能完美、代码整洁的小轮子,既让他在技能方面得到了积累,更是让其他人能从中获益。
当时他还很少写博客,我就撺掇他写博客,他也说干就干,很快就写完一篇,那篇文章的具体内容我不太记得了,我只记得他对于技术问题的专注和专业,令我非常钦佩。
这个时候就体现了他过去那么多年积累的价值,一旦开始写博客,就产量特别高。到现在短短五个月时间已经写了二十篇,而且素材越写越多,质量也越来越好,几乎每一篇都会成为博客园的推荐文章。他立下了一个flag,要写五十篇精品博客,让大家看到DotNet技术的美妙与精彩。
我们偶尔会讨论.NET开发者的焦虑,许多.NET开发者都以自己选择了.NET为耻,总觉得是这个技术让自己的路越走越窄,经常在各种技术群里吐槽,说自己人生最大的错误就是选择了.Net。
我们都对这种人觉得惋惜。他说,程序员只有因为自己没能努力学习而感到焦虑,真正掌握了一种开发技术,一定也能适应其他语言和技术。优秀开发者根本没时间焦虑,毕竟要学习的技能点随着年龄的增长越来越多,恨不能每天有48个小时来学习技术,哪里还有其他闲心去思考工作,家庭,技术之外的其他事情?只要自己技术过硬,哪里还需要担心什么未来前途不保?
我们也经常讨论招人难的问题。尤其是对于基于.NET技术栈的企业来说,都遇到了这样的问题。一方面,确实越来越少的开发者使用.NET技术栈,一方面许多使用.NET技术栈的开发者都在从事边缘业务的开发者,很难触及底层技术或核心的技术。这并非企业行为,而是兴趣爱好驱动的。
也必须承认,过去十年借助于互联网取得财富自由的.NET开发者几乎非常罕见,许多以前致力于研究.NET技术的开发者的出路都只能选择出国。这样的前提让功利的中国社会,越来越少人选择.NET技术。但是这也是.NET开发者最大的机会,好好学习技术、努力跳出自己的圈子,看看世界,选择将让你成长。
我深以为然。程序员,不仅仅是.NET程序员或java程序员,能够用心学好技术,努力提高自己的技能,并时刻保持学习的精神,才是程序员的最大的价值。
周杰正是按照这样的节奏在坚持自己的方向,他深刻的明白贪多嚼不烂的道理、没有追求一蹴而就,而是一步一个脚印,每一步都踏得严严实实。这种严于律己的优秀开发者的自我进取,也正是开发者所应该具备的自我刷新的精神。
他使我明白,无论是什么岗位,在什么环境下,都应该清楚自己的职业发展方向,并努力提高自己的硬技能和软实力,这是开发者得以利足于时代永不淘汰的光辉色彩。
(ps,大概需要减肥了。。)
三、环境造人才
在互联网技术飞速发展的今天,越是优秀的企业也往往最能凝聚最优秀的人才,正是这种人才间相互吸引的魅力,让企业更加优秀,也让人才得以借助企业提供的平台取得了更好的发展。
而优秀人才并非偶然天成、往往也得益于兴趣和团队氛围的培养,关注于结果,同样也要关注于过程,既关注于人才的保健因素(例如工作条件,上下级关系,同事关系,工资,职位,安全),也同样关注于人才的激励因素(工作中的成就感,得到的认可与奖励,本身的挑战与兴趣,职务的责任感,工作的发展前途,个人成长的晋升的机会等),才更能实现人才的价值提升。
人才、人才、人才,这正是在互联网大时代最宝贵的财富。
结语
欢迎大家关注他的公众号,【DotNet骚操作】。也请大家记住他,一位年轻而充满激情的开发者。
让我们一起跟随他的步伐,看看DotNet的一系列骚操作将如何给我们的生活带来更多精彩。
一位年轻而优秀的.NET开发者的成长点滴的更多相关文章
- 那些优秀的.NET开发者----汪宇杰:从重视细节,到成就技术专家
初识汪宇杰 在长沙.NET技术社区筹建过程中,溪源有幸认识来自上海的MVP汪宇杰Edi Wang.在中国众多的微软MVP中,Edi Wang作为一名九零后,也是一位年轻而充满才气的开发者,或许他或许外 ...
- 我们身边那些优秀的.NET开发者-
我们身边那些优秀的.NET开发者----邹琼俊 初识大佬 非常有幸通过博客园认识了邹琼俊邹老师,他也是<ASP.NET企业级开发实战>这本书的作者,这本书的销量达到了将近九千本,在这个实体 ...
- 一个优秀的Unity3d开发者必备的几种设计模式
Unity脚本编程 众所周知,unity的编程属于脚本化,脚本没有一个具体的概念跟架构, 导致在项目过程中,经常出现哪里需要实现什么功能,就随便添加脚本, 结果,就造成了一片混乱,不好管理. 更有甚者 ...
- QQ中未读气泡拖拽消失的实现(参照一位年轻牛B的博主的思路自己实现了一下)
原文链接:http://kittenyang.com/drawablebubble/,博主年轻却很有思想.相仿的年纪,很佩服他! 首先分析拖拽时的图,大圆.不规则的图(实际上时有规律的不然也画不出来, ...
- 优秀的PHP开发者是怎样炼成的?
4.在数据库中避免使用联合操作 比起其它的Web编程语言来说,PHP的数据库功能十分强大.但是在PHP中数据库的运行仍然是一件十分费时费力的事情,所以,作为一个Web程序员,要尽量减少数据库的查询操作 ...
- 来看看这位年轻的 eBay 小伙是如何成为 Committer
介绍一下我自己 目前就职于eBay中国,专注于微服务中间件,分布式架构等领域,同时也是狂热的开源爱好者. 如何成为一个commiter 过去几个月,我一直持续在为 Apache DolphinSche ...
- 长沙4月21日开发者大会暨.NET社区成立大会活动纪实
活动总结 2019年4月21日是一个斜风细雨.微风和煦的美好日子,由长沙.NET技术社区.腾讯云云加社区.微软Azure云技术社区.中国.NET技术社区.长沙柳枝行动.长沙互联网活动基地(唐胡子俱乐部 ...
- 推荐给开发者的20个优秀PHP框架
推荐给开发者的20个优秀PHP框架 来源:developerslane 时间:2015-01-13 19:48:06 阅读数:111916 分享到:14 [导读] PHP是非常受欢迎并且很有影 ...
- 想要成为一名优秀的Java程序员,你需要这8个锦囊
私底下,隔三差五就有读者问我:"二哥,怎么样才能像你一样,成为一名优秀的 Java 开发者呢?"假如把"怎么才能像你一样"去掉的话,这个问题就是一个好问题,否则 ...
随机推荐
- 基于Python协同过滤算法的认识
Contents 1. 协同过滤的简介 2. 协同过滤的核心 3. 协同过滤的实现 4. 协同过滤的应用 1. 协同过滤的简介 关于协同过滤的一个最经典的例子就是看电影,有时候 ...
- 你竟然不装油猴插件-Chrome神器TamperMonkey
油猴插件是一款可以在chrome浏览器中使用油猴脚本的插件.理解为脚本运行的平台 脚本 是一段代码,安装之后,有些脚本能为网站添加新的功能,有些能使网站的界面更加易用,有些则能隐藏网站上烦人的部分内容 ...
- 从React-Native坑中爬出,我记下了这些
吐槽 如果React-Native是个人,我估计已经想要打死他了... 上一篇文章 当React开发者初次走进React-Native的世界 前言 最近因为业务需要,做了一些关于React-Nativ ...
- 如何使用CSS实现居中
前言: 这一篇主要是翻译 <how-to-center-anything-with-css>这一篇文章的主要内容,再加上自己的一些概括理解:主要问题是解决垂直居中的问题.我们知道实现水平居 ...
- Spring Security 前后端分离登录,非法请求直接返回 JSON
hello 各位小伙伴,国庆节终于过完啦,松哥也回来啦,今天开始咱们继续发干货! 关于 Spring Security,松哥之前发过多篇文章和大家聊聊这个安全框架的使用: 手把手带你入门 Spring ...
- springboot结合jpa
idea中新建springboot项目,引入spring-boot-starter-data-jpa依赖 application.yml中配置数据库连接,示例如下: spring: datasourc ...
- Linux防火墙常用操作
/tcp —— 配置白名单 sudo systemctl start firewalld — 启动防火墙 sudo firewall-cmd --state - 看状态 sudo firewall-c ...
- Ubuntu php安装xdebug
1.安装xdebug扩展: sudo apt-get install php-xdebug 2.找到扩展的路径: 3.编辑php.ini文件,末尾加入,保存退出: [xdebug] zend_exte ...
- JavaScript回调函数和递归函数
一.回调函数--通过函数的指针来调用函数 把一个函数的指针作为另一个函数的参数,当调用这个参数的时候,这个函数就叫做回调函数 在链式运动上会用到回调函数,之后运动会见到 A.通过指针来调用函数 B.通 ...
- Halcon一日一练:创建AOI
AOI:Area Of Interesting.感兴趣区域,即你要处理的区域. 一般情况,一整张图像,我们需要对局部进行操作,我们会选择一个我们需要处理的区域,对其进行处理,其他区域进行屏蔽.这个区域 ...