首页 程序笔记 让人迷茫的三十岁,从专业技能、行业知识和软实力的人才三角谈

让人迷茫的三十岁,从专业技能、行业知识和软实力的人才三角谈

这是我无意中在社区微信群中看到的一位年轻的开发者说的话,之前他也经常会在技术群中抛出一些有深度有内容的问题,并能积极乐观的进行问题思考和探寻技术解决方案,有时候可能会错误的以为他这样一位热爱学习的开发者,在公司也一定是技术的引领者,对自己的职场规划有着清楚的认识。  所以他抛出这样的问题着实有点意外,不过细想之后,或许也属实正常是。对于30岁左右的开发者来说,从20出头的毛头小伙,逐渐成长为家庭和公司的顶梁柱,如果一直从事技术领域,大概很容易就到了瓶颈期,如下图,一个人的学习能力增长曲线,大概三年或五年左右,增长速度就会逐渐放缓。  到了这个阶段会非常痛苦,如果身处一家优秀的公司还好,有一套完整的体系保证你持续成长,否则就得陷入了吃老本的时期,或许将一直这么平庸的下去,直到被迫退出行业。  而那些不甘如此的优秀者,都渴望去改变现状,他们们往往承受着无比巨大的压力,尤其是互联网技术飞速发展、各种新技术新方法席卷而来,究竟该如何选择技术的发展方向和个人的职场规划,这个问题自然而然就出现在他们面前。  以下是互联网开发者的“人才三角”结构,由专业技能、行业知识和软实力组成。每一个圆环均代表一个知识边界。
  • 一、专业技能
  专业技能是开发者赖以生存的宝贵技能,而其中开发语言是最重要的一个方面。近年来飞速发展的互联网业,似乎对.NET开发者带来的冲击相当巨大,在许多城市,甚至出现了Java与.NET的招聘信息比例10比1的惊人情况,而在国内互联网公司,似乎除了同程艺龙、蔚来汽车等公司,已经找不出太多叫得上名头的大企业坚持使用.NET技术栈。  但是即便如此,这并没有说明.NET技术已经逐渐落伍,尤其在技术领域,看起来火热的市场,从来也不是一门语言所能主宰。真正优秀的开发者从来不会被语言束缚,事实上虽然掌握一门核心语言非常重要,其次在语言之外的其他专业技能,诸如设计模式和设计原则、对于算法等的理解程度,都是开发者非常重要的能力,对他的价值评估产生了非常深远的影响。  在众多专业技能中,比较争议的大概是数据库、各类组件和其他专业技能,以及DevOps和微服务。首先是这些新概念,铺天盖地而来,让人难以抗拒学习的欲望,甚至不学习,也经常会被人说成知识体系闭塞。但是学习了之后,如果得不到实践,不见得能够带来短期或长期受益。除此之外能够恰到好处的掌握好数据库和各类第三方组件(诸如Redis、Consul)等,虽然能够让开发者获得不少机会,但是却并非每位开发者都有时间或精力了解这么多东西。毕竟每天只有24小时,花时间学习了A组件,往往就得忽略其他组件。而且如果只是浅尝辄止的了解某些组件,倒不如仔细的钻研众多同类组件中的一种。  微服务容易让人陷入知识的海洋无可自拔,在宝玉老师的专栏《软件工程之美》也提到微服务架构并非软件系统的天然演进,要靠组织力量来完成。而在微服务书籍《微服务设计模式》中也提出,微服务实际上应该是一种组织架构形式的体现,而不仅仅只是一种软件架构。为了微服务而微服务,不见得会带来了团队沟通成本的提高,也不见得有利于软件系统的高效迭代。同样,为了DevOps而上容器,这样也不是一种值得推崇的策略。  我把DDD和TDD纳入到专业技能中非常重要的一环。因为DDD是一种非常重要的软件问题分析方法,从宏观来看有点像团队问题分析方法,如果时间有限,大概不太有必要独自研究,毕竟要将其实践下去,还是要更多的依赖团队,不如拉几个同事一起探究。如果没办法将DDD完美的实践下去,也不必苛求,运用好领域的分层思想,可以让软件系统尽可能可控的管理各领域的知识,实现业务知识的沉淀。  TDD看似能够让软件尽可能的减少后期的维护成本,但是要将其实践下去,取决于大环境和个人是否持续不断的刻意练习,而且需要一个漫长的周期。能够刻意练习显然是极好的,相信他一定能给你带来非常巨大的好处。
  • 二、行业知识
  所处行业、和行业知识是决定开发者的关键,而不是专业技能本身。例如红得发紫的电商行业,阿里巴巴或拼多多等电商平台,最能给开发者带来丰厚收益的行业,也是竞争最为激烈的行业。而例如社区团购这种新兴商业业态在长沙,也同样为长沙技术圈的从业者带来的新的机遇。  但是似乎许多行业的开发者们对本身行业知识的兴趣并不大。许多开发者往往执着于对专业技能的钻研,而忽略了对行业知识的了解。而事实上行业知识的认知深度,恰好更能体现产品的水平和公司的专业程度。如果每个人都矢志于为公司打造最专业的产品,这显然将为公司、为个人带来无穷收获。
  • 三、软实力
  软实力是让你我与众不同的核心关键。他体现在外在,是一个人的谈吐和为人处世的态度。他通过领导力、管理能力、表达能力等许多种形式让你的优点得以更好的表现在世人面前。  软实力,是程序员成功的关键。例如你是否能够与团队成员融洽的沟通,这能够促进你与团队成员间的相互认同、你是否能够将你打造的产品更好的展示在领导或客户面前,这有利于你和公司产品价值的彰显、你是否能用文字或PPT对你的工作进行总结,这又能体现你的组织表达能力。而你在公司与其他同事的良好沟通、与客户的良好沟通,既是在积累人脉,更是在投资未来。  我把运气列入软实力的范畴,是因为我觉得运气是很重要的一环,不过如果没有足够的软实力积累,即便有不错的机遇,也不见得有能力支撑住。
  • 四、总结
  在我参加工作的早期,总是片面的认为技术能力才是决定人与人区别的最大关键。但是事实上恰好相反。我们身边那些混得最好的,他们往往并不是技术最好的。他们往往更善于钻研一个行业,并从中发掘出价值。他们往往更注重软实力的培养,并通过这些软实力,获得许多常人不能拥有的机会。  优秀的开发者也善于抓住职场中的每一次挑战。他们将每段职场当做修行和学习的机会,无时无刻不忘提升自己,哪怕在小公司,也同样能创造不平凡的成绩。  短暂的迷茫不可怕,怕的是看到了迷茫还不试图改变,例如知道能力有不足,却依然忽略了对能力的积累。能力的积累从来不仅仅只是停留在纸面上的简单文字,再多的迷茫,不如从眼下开始刻意练习和主动培养。例如作为.NET开发者,或许我们都需要更加深层次的了解C#/.NET技术的核心知识,一本好书《C# 7.0 核心技术指南》将为你解惑无穷。  无论当下我们做的什么技术,最重要的关键,就是认清楚自己的缺点,然后有意识的去改善。不必苛求昨天的自己比今天的自己优秀,努力使明天的自己比今天更优秀,坚持一个方向,总能让你获得更多机会。

站心网

这是我无意中在社区微信群中看到的一位年轻的开发者说的话,之前他也经常会在技术群中抛出一些有深度有内容..

为您推荐

程序员职业发展与技能要求

程序员是从事计算机程序开发、维护和优化的专业人员。他们通过编写代码,设计软件系统,解决技术问题,推动技术创新。以下是程序员的一些关键信息:核心技能编程语言:掌握如Python、Java、C++、JavaScript等语言。..

程序员失业日记2:失业后迷茫

从公司离职后,开始几天是非常开心的,不用工作,心情很放空,每天都睡到自然醒。每天都可以随意的安排生活,不急不赶的爬山,或者每天只做一点很简单的事情,但是没有时间的焦虑。后面就开始迷茫了,这种迷茫是有工..

程序员不得不知的软技能

程序员群体不应该是一直低头敲代码,更应该掌握一些软技能,改变一贯的沉闷木讷的形象,让自己在竞争中胜出,从而职业发展更顺利。在此总结整理了几个常用软技能点供大家参考~1、及时复盘的习惯所谓复盘?就是对已做..

技术实力的本质是什么?

背景今天,我们来讨论一个问题:技术实力的本质究竟是什么?在工作中,你可能会遇到,为什么他的实力不如我,他却可以晋升?在面试中,你可能会遇到,我把系统性能优化了10倍,为什么面试官还是看不上我?为什么?到..

.NET架构师需要掌握哪些技能?

.NET架构师日常工作有哪些?.NET架构师的日常工作主要包括以下几个方面:系统架构设计:制定系统架构设计方案,包括系统分层、模块化、可扩展性等方面的设计,确保系统具备高可用性、高性能、易维护性等特点。技术选..

.NET架构师必备技能

作为一名.NET架构师,你需要掌握一系列技能,以便能够设计和构建高质量、可扩展、可维护的应用程序架构。以下是.NET架构师必备的一些关键技能:深入的.NET知识作为.NET架构师,你需要对.NET平台的各种方面有深入的了..

全栈程序员需要哪些技能

全栈(Full Stack)程序员,是指在软件开发中,既能够进行前端开发(Front-end Development),也能够进行后端开发(Back-end Development),甚至涉及到数据库管理、服务器配置等多个领域的技能。想成为全栈程序员,..

开发转测试需要掌握哪些技能?

当开发人员转向测试岗位时,需要掌握以下技能和知识:测试基础:熟悉软件测试的基本概念、方法和流程,包括单元测试、集成测试、系统测试等。测试工具:掌握常用的测试工具和框架,如Selenium、Appium、JUnit、TestN..

IT人应当知道的10个行业内幕

如果你打算从事IT行业或刚进入这个行业,也许本文下面的小内幕会吓到你,因为这些事平常都不会公开讨论的。如果你是IT资深人士,或许你已经遇到其中的大部分了。如果你愿意,请一起来参与讨论吧。 这些内幕大多数是..

传统行业公司用.NET多还是java多

在选择使用.NET 还是 Java 进行开发,很大程度上取决于企业的需求、技术栈、人才资源以及项目性质等因素。以下是一些考虑因素:1. 技术栈和人才资源: 如果企业已经有.NET 或 Java 开发团队,并且团队成员对某种技术..

Visual Studio(VS)专业版 企业版和社区版的区别

Visual Studio(VS)专业版、企业版和社区版是针对不同用户群体和需求设计的不同版本,它们在功能、定价和许可证方面存在一些区别。Visual Studio(VS)微软官网下载地址:https://visualstudio.microsoft.com/zh-ha..

计算机IT行业最值钱的十大证书

在计算机IT行业,拥有高含金量的证书对于求职和职业发展至关重要。市场需求和就业市场的变化使得以下列出的十大证书排名成为当前最具吸引力和价值的目标。第1名:MCSE — 微软认证的系统工程师之巅峰MCSE(Micr..

ChatGPT降温后哪个新行业在形成

参考消息网9月29日报道英国《经济学人》周刊网站9月21日发表题为《ChatGPT热或在降温,但一个重要的新行业正在形成》的文章。文章认为,一个以超强劲的人工智能模型为核心的全新产业正在形成。第一波有关生成式人工..

IconFinder官网 | 专业的图标资源平台

IconFinder 是一个提供高质量图标的在线平台,旨在为设计师和开发者提供便捷的图标资源服务。它不仅支持各种格式的图标下载,还提供了在线存储、格式转换等实用功能,极大地方便了用户的工作。IconFinder 官网:http..

.NET全栈程序员需要哪些技能?

.NET 全栈程序员是指同时具备前端和后端开发技能的专业人员,他们可以独立或协作地开发完整的应用程序。.NET 全栈程序员需要掌握一系列技能,涵盖了前端、后端和数据库等方面。以下是.NET 全栈程序员需要具备的一些..

发表回复

返回顶部