我心目中的杰出工程师

news2024/11/16 13:25:36

参考原文:The difference between good and great engineers

在工程师成长的这条路上,我从普通工程师 → 高级工程师 → 技术专家 → 技术管理 → 技术总监,一路走来,对何为杰出工程师是一直在思考和追寻的。如今我在公司培养工程师团队,我依旧在不停地思考,我要明确我对工程师最看重的是什么,然后才可以招聘、鼓励、支持和奖励这些杰出特质

加入我司后,我从 0 开始搭建技术部门,团队从 0 人到现在的 20+ 人,也告诉自己我要在未来的岁月中继续打造最好的技术团队。那对于杰出工程师的特质和技能究竟有哪些呢?这些特质和技能为什么对我、对工程师自身、对公司是至关重要呢?

要有野心雄心和坚韧不拔的意志

  • 他们一般都有远大的理想,并能自驱式推动自己、Leader和整个团队取得比最初的期望更大的成就
  • 他们是始终怀着成长和突破的心态,渴望新的挑战和来自Leader、部门、公司、市场的反馈,这同时也会反哺他们的成长
  • 他们面对失败挫折时会坚持不懈,认可只有努力才能精通
  • 他们会从批判性的反馈中吸取教训,改进不足
  • 他们会从他人成功中受到启发,不断效仿和学习
因为
  • 雄心壮志是成功的天花板
  • 伟大的公司一般都会有巨大的野心,这种野心一般最初来自出色的创始人,但是随着有野心雄心和坚韧不拔意志的人加入,这种野心会被持续传承和发展下去
  • 他们会为自我和他们忠诚的事业影响力而战斗,并让这份影响力持续升级成伟大
  • 他们会比那些可能更有才华但缺乏自我驱动力的人表现优秀,成长的更高更快
所以

我愿意押注在这样的人身上,愿意花时间帮助他们成长

思考方式和思维习惯要尽可能简化

  • 他们做事时习惯性简化,会让他们拥有和接触的代码更简单、更清晰、更易于被使用、更能更新迭代
  • 他们帮助他们的团队、他们的合作人也习惯性持续性地这样去做
  • 他们对技术应该发展到哪里有长期的愿景,他们把其他人带入进来,让他们对这个愿景而兴奋并一起朝着这个愿景前进
因为
  • 软件增长和发展一般是随着时间的推移变得愈来愈复杂,每一个变化都可能使系统更加复杂,除非你刻意简化
  • 更复杂 → 更高的变更成本 + 更高的重大变更风险 → 更难创新 → 更难增长 → 更无法让用户满意 → 更多杯具
所以

我愿意押注在这样的人身上,愿意花时间帮助他们成长

可以快速调试定位任何问题

  • 他们定位问题不是靠猜测,也不是靠重启机器、清除缓存,他们不迷信
  • 他们在直觉的指导下,通过严谨的调试定位,从不同角度缩小问题边界,定位根本原因
  • 他们拥有充足的经验、信息来源和技术手段来收集问题相关信息
  • 他们通过代码、测试、网络、操作系统、数据库、日志、监控指标来辅助定位问题
  • 他们不会停止,直到找到真正的原因
  • 他们将重现问题,并不停地缩小问题范围
  • 他们会很好地解决问题,并了解它是怎么发生的,并进行修复复盘,避免出现类似问题
  • 他们都是细节控
  • 他们不会说:那是别人的代码 or 我是 Java 程序员,不会调试前端页面
  • 他们把每一次的调试定位问题的经历当做是有趣的挑战、学习的机会
因为
  • 修复的越快,花在创造价值上的时间就越多
  • 他们对问题理解深刻才能修复的快
所以

我愿意押注在这样的人身上,愿意花时间帮助他们成长

成就他人变得同样杰出

  • 杰出伟大的工程师是每个工程师都想合作的对象
  • 他们明白帮助他人学习、改进和成长会让他们产生更大的影响,也会让他们从中获得快乐、成就、影响力
  • 他们明白【生产力=∑人才 * 团队合作】,就会自然而然地会去培养人才和团队合作
  • 他们快速有效地照顾平淡无奇或平凡的人,没有大惊小怪或喘不过气
  • 他们并不自私地对待所有难题,他们知道别人需要挑战才能成长,并且能很好地支持他人
  • 他们是好老师,有耐心,善于适应周围人的不同学习方式
  • 他们坚持高标准,清晰知道把他人带到那里是快乐的而不是冲突的,他们善待程序员而非代码
因为
  • 没有成长的公司会走向沉沦
  • 成长中的公司,蓬勃发展,而这种成长有很大一部分是由员工成长而决定的
所以

我愿意押注在这样的人身上,愿意花时间帮助他们成长

对所做之事知道什么有价值的

  • 他们对任何时候最重要的事情都有很好的判断力
  • 他们以客户为中心,而不仅仅是以技术为中心
  • 他们确保他们正在解决有价值的重大问题
  • 他们知道价值才能知道选择做什么以及如何做
  • 他们清除流程和沟通中的低效率
  • 他们表现得像是在花自己的钱
因为
  • 任何公司任何时间,实际上是有多个想法需要探索,尤其创业型公司,需要修复和迭代的东西太多,但你只有一个小桶,而他们可以帮助你用正确的东西来填满这个桶,那么双向信任就会满满
所以

我愿意押注在这样的人身上,愿意花时间帮助他们成长

富有创造力且积极主动

  • 他们是遇到困难时,不仅自己有勇气且看到希望,同时会给每个人希望和勇气
  • 他们鼓励可能性,而不是拿东西肯定没人用
  • 他们会了解和发现问题以及有价值的东西,并为周围的人提供选择
  • 他们是领导者而非受害者
  • 他们推动和鼓励正在构建的产品以及他们构建产品方式的创新
因为
  • 如果从一开始就觉得会输,那肯定就会输,创业需要激情、信任、信心
  • 积极性是有强感染力的,并能使每个人发挥出最好的一面
  • 一个有信念、有追求,并且在努力取得成功时还不断创新的团队就一定有机会成功
所以

我愿意押注在这样的人身上,愿意花时间帮助他们成长

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

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

相关文章

【Kubernetes】存储类StorageClass

存储类StorageClass 一、StorageClass介绍二、安装nfs provisioner,用于配合存储类动态生成pv2.1、创建运行nfs-provisioner需要的sa账号2.2、对sa授权2.3、安装nfs-provisioner程序 三、创建storageclass,动态供给pv四、创建pvc,通过storage…

泛微e-cology XmlRpcServlet文件读取漏洞复现

0x01 产品简介 泛微e-cology是专为大中型企业制作的OA办公系统,支持PC端、移动端和微信端同时办公等。 0x02 漏洞概述 泛微e-cology XmlRpcServlet接口处存在任意文件读取漏洞,攻击者可通过该漏洞读取系统重要文件(如数据库配置文件、系统配置文件)、数据库配置文件等等,…

【洛谷算法题】P5717-【深基3.习8】三角形分类【入门2分支结构】Java题解

👨‍💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5717-【深基3.习8】三角形分类【入门2分支结构】🌏题目描述&#x1…

Opencascad(C++)-导出整个模型到stl文件

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1、前言2、首先创建几个简单的模型3、导出stl的代码为4、查看导出的结果5、结论 1、前言 最近研究下Opencascad,还不是很深入,对于Opencasc…

大语言模型有什么意义?亚马逊训练自己的大语言模型有什么用?

近年来,大语言模型的崭露头角引起了广泛的关注,成为科技领域的一项重要突破。而在这个领域的巅峰之上,亚马逊云科技一直致力于推动人工智能的发展。那么,作为一家全球科技巨头,亚马逊为何会如此注重大语言模型的研发与…

04-Nacos中负载均衡规则的配置

负载均衡规则 同集群优先 默认的ZoneAvoidanceRule实现并不能根据同集群优先的规则来实现负载均衡,Nacos中提供了一个实现叫NacosRule可以优先从同集群中挑选服务实例 当服务消费者在本地集群找不到服务提供者时也会去其他集群中寻找,但此时会在服务消费者的控制台报警告 第…

基于SSM的摄影服务线上选购预约系统设计与实现-计算机毕业设计源码83784

摘 要 随着互联网趋势的到来,各行各业都在考虑利用互联网将自己推广出去,最好方式就是建立自己的互联网系统,并对其进行维护和管理。在现实运用中,应用软件的工作规则和开发步骤,采用SSM技术建设摄影服务线上选购预约系…

设计模式——策略模式(Strategy Pattern)

概述 策略模式又叫政策模式,是一种对象行为型模式。它是将定义的算法家族分别封装起来,让它们之间可以互相替换,从而让算法的变化不会影响到使用算法的用户。策略模式的主要目的是将算法的定义与使用分开,也就是将算法的行为和环…

IoTDB JavaAPI

文章目录 使用样例Java使用样例 官方已经给出了相关使用Demo,下载地址为: https://github.com/apache/iotdb 直接拉取相对应版本的源码 使用样例 Java使用样例 代码位置 iotdb/example/session/src/main/java/org/apache/iotdb/SessionExample.java iotdb/exa…

springboot打成war包及VUE打成war包放入tomcat启动

1.springboot打成war包步骤 首先在springboot启动类中继承SpringBootServletInitializer,重写configure方法,如下: SpringBootApplication() public class StartApplication extends SpringBootServletInitializer {public static void main(String[] …

计算机网络编程

网络编程 Java 是第一大编程语言和开发平台。它有助于企业降低成本、缩短开发周期、推动创新以及改善应用服务。如今全球有数百万开发人员运行着超过 51 亿个 Java 虚拟机, Java 仍是企业和开发人员的首选开发平台。 课程内容的介绍 1. 计算机网络基础 2. So…

Network 灰鸽宝典【目录】

目前已有文章 11 篇 Network 灰鸽宝典专栏主要关注服务器的配置,前后端开发环境的配置,编辑器的配置,网络服务的配置,网络命令的应用与配置,windows常见问题的解决等。 文章目录 canvas理论基础canvas高级应用示例canv…

Java 线程的基本概念

创建和运行线程 方法一,直接使用 Thread // 创建线程对象 Thread t new Thread() {public void run() {// 要执行的任务}};// 启动线程 t.start();例如: // 构造方法的参数是给线程指定名字,推荐 Thread t1 new Thread("t1") …

软件测试:基础概念

目录 ​编辑 一、前言 二、软件测试的原则和方法论 1.测试的原则 2.测试的方法论 2. 软件测试策略 2.1 单元测试 2.2 集成测试 2.3 系统测试 2.4 用户验收测试 3. 软件测试的最佳实践 3.1 自动化测试 3.2 持续集成 3.3 边界值测试 三、软件测试的技术和实践 1.…

深度学习——第4.3章 深度学习的数学基础

第4章 深度学习的数学基础 目录 4.7 指数函数和对数函数 4.7 指数函数和对数函数 深度学习经常会用到Sigmoid函数和Softmax函数,这些函数是通过包含exp(x)的指数函数创建的。后面我们需要求解这些函数的导数。 4.7.1 指数 指数是一个基于“乘以某个数多少次”&a…

远程工作:自由职业者如何成功赚钱

前言 在这个不断进步的数字化时代,远程工作已经从一个可选的边缘工作方式,成长为主流职业趋势的一部分。特别是自从全球疫情改变了我们的生活和工作方式以来,远程工作的概念不再是遥不可及的理想,而是已经成为许多人日常工作的现…

12 位多通道国产芯片ACM32F403/F433 系列,支持 MPU 存储保护功能,应用于工业控制,智能家居等产品中

ACM32F403/F433 芯片的内核基于 ARMv8-M 架构,支持 Cortex-M33 和 Cortex-M4F 指令集。芯片内核 支持一整套DSP指令用于数字信号处理,支持单精度FPU处理浮点数据,同时还支持Memory Protection Unit (MPU)用于提升应用的…

PCB-修改pcb封装后,规则重新检查出现的提示解决

规则检查 前提 前提 要在.pcbdoc页面点击design 点击 run design rule check 3.出现提示 4.意思是对某些器件修改过,进行重新铺铜即可 重新铺铜快捷键:TGA,如下是重新铺铜后的结果

气温波动 C语言xdoj45

问题描述 最近一段时间气温波动较大。已知连续若干天的气温,请给出这几天气温的最大波动值是多少,即在这几天中某天气温与前一天气温之差的绝对值最大是多少。 输入说明 输入数据分为两行。 第一行包含了一个整数n,表示给出了连续n天…

订单接入支付宝流程实战与优化

概述 了解支付宝支付能力接入方式。电商项目如何对支付流程进行设计及优化。基于 RocketMQ 事务消息实现的订单确认机制,来完成订单超时回退功能。 支付宝接入流程简介 国内目前有支付牌照的公司总共只有两百来家,比如支付宝、云闪付、和包支付、翼支…