专访蒋宇捷:技术管理者应具备哪些能力?(转载)

2023-11-14

摘要:近期,本站记者采访了CSDN社区活跃用户、百度技术经理蒋宇捷。他认为一个合格的技术管理者应该具备深度认知产品、冷静决策,以及良好的沟通能力,还要秉持着技术源于一线,永远不能脱离一线的观念。

蒋宇捷,西安交通大学硕士。现任百度技术经理,曾担任傲游Web后台主管,腾讯研究院浏览器前端负责人,创新工场魔图项目技术负责人。《论道HTML5》合著作者,关注Web前、后端架构、移动互联网应用和团队管理。

编程初体验

CSDN:你何时开始接触计算机,又如何走上编程道路的?

蒋宇捷:小学的时候,父母单位的苹果机、386和586都可以让我在空闲时候使用。而在那时代彩色显示器非常少见,即使一个小小的黑白屏幕的计算机,对我来说都非常神秘,有着巨大诱惑力。从那时起,我抱着一本Basic入门书籍就开始了学习编程,编写一些小程序和打飞机一类的简单游戏,觉得非常有成就感和有趣。

本科填报志愿时,最热门的专业是信息与通信工程专业,比计算机专业还高出不少分。我个人觉得这个领域很有前途,就选择了这个专业。但由于小时候的经历,一直对计算机情有独钟。后来在选择研究生方向的时候,最终选择进入计算机领域。

CSDN:谈谈你是如何不断提高自己编程技术的?

蒋宇捷:编程技术的提高需要不断的学习、总结、提炼、分享,这是一个环,也是一个迭代的过程大学教给我们很好的学习能力,编程技术领域发展又快,日新月异,这要求我们通过各种方式来吸收新的知识。总结是在不断的项目实践、代码实现中,反思和归纳自己技术实现里的优点和缺陷。例如重构的过程、模式的使用等。提炼是提升的过程,从量到质,从更高的层次思考编程之道。分享是自己把经验和思考的结果传播出去,让别人认知,产生共鸣,给予反馈的过程,从中我们获得了别人的经验和能力,形成有效补充,又再次进入了学习的过程。

技术管理者的成长之路

CSDN:你是如何从技术层提升到管理层的?期间有什么有意思的回忆?

蒋宇捷:我于2007年7月进入傲游,一个月转正,2个月担任项目负责人,3个月就被提升为技术Leader。这个过程非常顺利,我的经验是要快速的做出成绩,展现出自己的能力。我当时第一次接触Perl这门编程语言,一边学习一边开发项目,共花了一个多星期时间,完成了一个类似于百度知道,包含全文检索功能,从前端到后台功能齐备的网站,这一次的经历为我晋升打下了很好的基础。

CSDN:你认为一名技术经理或是技术管理者,应具备什么样的能力?

蒋宇捷:我认为技术管理者有几个必备的能力:

1. 沟通说服能力:作为管理者,每天做的最多一件事情就是沟通,向上、下级,以及横向沟通,要让团队、项目按照正常的方向前进,要能够说服别人按照你的想法去执行,这点非常重要。

2. 分析判断能力:进行技术决策时,要冷静、全面的思考和分析,给出正确的技术方向,是每个技术管理者必备的能力。方向的正确程度决定了项目开展的速度与质量,正确的方向和优秀的架构即便在多年过后仍然焕然如新。

3. 产品架构能力:技术管理者必须要对产品有很深刻的认识,要充当技术和产品之间的桥梁,否则永远只能孤立的从技术层面看待问题,而无法从整个产品、项目的高度评判需求,以及技术实现的合理性。

CSDN:你现在是否坚持每天编程,这对你有何帮助?

蒋宇捷:我现在大部分时间都用在沟通、协调、思考、解决团队和项目中的问题,以及产品的方向上。不过前段时间我还主持并亲自参与了产品前端重构的项目,由此也对一些新的开发技术和框架有了新的了解和认识。技术来源于一线,永远不能脱离一线

CSDN:在用技术手段完成某战略或运营目标的过程中,有何常见的难题?身为技术管理者,能不能分享下都是如何解决的?

蒋宇捷: 常见问题有3个,需求的不确定性、需求方面和时间与质量的平衡点。

1. 需求的不确定性:需求的变化永远是无法预估的。有两个问题可能每个人都有亲身的体验。

第一个是“作为产品经理,你被技术问的最多的问题是什么?”,答案是“你确定以后不改了?”

第二个是“作为工程师,你问产品经理最多的问题是什么?”,答案是“这个功能是不是可以放到下个版本再做?”。

解决方法:需求的不确定造成技术实现有很大的不确定和后期变更风险,这个时候我们要做的是先确定技术方向、技术框架,通过拆分模块、利用设计模式容纳变化,以及在产品层面细分story等各种方法,来减轻每个迭代时需求变化的风险。

2. 需求来自方方面面:有时候完成目标的过程中,需求会来自方方面面,而不仅仅是单纯的产品需求。

解决方法:这时候就需要技术管理者评估成本、抵挡一些需求,或向对方明确预期。我的经验是最好开诚布公的讨论代价和收益,也需要管理者从更高维度的战略层面来考虑,否则有可能违背公司的整体战略。

3. 时间与质量的平衡:完成目标的过程中,常常遇到时间与质量的平衡之困。例如,经常版本早已确定了发布日期,但是由于时间有限,开发和测试时间都严重不足,这会导致产品质量不可控,是否按时发布就变成了一个难题。

解决方法:管理者除了在流程上整体把控外,还需要向上、下级,以及和各种角色沟通,降低时间和质量的预期,并结合一些保障机制。例如,核心用户群、灰度发布来减轻风险。

CSDN:做产品的过程中最惨痛的失败教训有哪些?

蒋宇捷: 创业的经验和教训告诉我:产品好不好用,用户很快就会投票。如果用户量迟迟不能增长,那是产品本身的定位出现了问题。需要尽快改变产品方向,迅速试错。从最近一些成功的产品美丽说、唱吧中,我们都能找到同样的轨迹。另外创业初期,渠道没那么重要,运营却是非常重要的一部分。

移动互联网现状

CSDN:你从事的工作涉及到移动互联网,你认为移动互联网现在处于一个什么阶段?

蒋宇捷:移动互联网还处于初级发展的阶段,它会在我们的生活中发挥越来越重要的作用,让我们的生活变得越来越便捷,成为不可或缺的水和电。

移动互联网、云计算、物联网的结合,会极大的改变我们的生活和商业模式,诞生新的技术革命。一些老旧的企业和商业模式将会受到很大挑战,被超越,被取代,被颠覆;而新的数字英雄将会崛起。

CSDN:传统互联网企业转变到移动领域,你觉得技术难点在哪里?有何好方法能克服困难?

蒋宇捷:传统互联网企业转变到移动领域主要有几个门槛:意识门槛、技术门槛和商业模式门槛。意识门槛指没有意识到抢占移动领域的重要性和紧迫性;技术门槛是指企业里没有对移动领域有很深了解和专门的开发人员;商业模式门槛指在移动领域变现较难,要花很大力气去探索。

我的建议是传统互联网企业要从意识上加深认识,从技术上加大投入,从商业模式上加强对全行业和用户的调研,以及和移动互联网企业合作也是不错的选择。

CSDN:对于移动开发的未来,你觉得哪些技术最值得开发者关注,或者需要开发者掌握?对于希望学习开发的初学者,你有什么建议?

蒋宇捷:抛开比较成熟的Android和iOS开发技术,HTML5是未来移动开发的趋势。开发者应该或多或少认识到它的力量和作用。关注HTML5的初学者可以多参加一些HTML5的沙龙或者讲座,关注一些优秀的技术博客,或者阅读一些入门书籍。

CSDN帮我结识更多朋友

CSDN:你在学习或工作中,是怎么接触到CSDN?CSDN对于你的工作或学习有什么影响,起到过什么帮助?有没有故事可以分享?

蒋宇捷:CSDN作为国内最大的技术社区,有非常大的技术影响力。2010年,我在CSDN博客上发表了自己的第一篇技术博客,通过CSDN博客我积累了一定的关注度和技术影响力,并获得CSDN博客之星称号。在《程序员》上我曾经发表过《HTML5之美》和《创业公司如何招聘优秀工程师》等文章,分享对于HTML5、创业的经验和想法。

CSDN主办的一些活动也非常有价值,例如CMDN、TUP等有很多有价值的Topic,而CTO俱乐部提供给技术管理者一个认识和交流的平台。而今年我受邀作为讲师参加了CSDN主办的中国软件开发者大会,分享了对于HTML5安全方面的一些经验和心得。

通过CSDN我认识了很多朋友,例如创始人蒋涛、总编辑刘江、副总经理曾登高等。记得今年我去广州参加技术会议,当时的东道主专程为我们把酒接风,席间又认识了两位CSDN的朋友,原CSDN副总经理韩磊和CSDN博客专家魏祝林,是CSDN这个平台把我们聚合在了一起。

CSDN:你对CSDN有什么建议,以及你对CSDN的未来有什么期待?

蒋宇捷:CSDN平台太大,各个子平台和品牌需要更好的整合和统一展现。CSDN社区里的牛人非常多,我希望有机会能和里面各领域的专家更多交流。另外希望《程序员》这本杂志与时俱进,越办越好。

蒋宇捷博客地址:http://blog.csdn.net/hfahe

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

专访蒋宇捷:技术管理者应具备哪些能力?(转载) 的相关文章

  • 变量和数据类型

    变量概述 变量 它是在程序中最为基本的一种单一数据的存储方式 顾名思义它代表的就是存储的数据可以改变 可以改变的量 值 变量的组成 变量的数据类型 变量名 变量值 数据类型 数值类型 整数类型 1 2 3 0 1 byte 1字节 128
  • 启动MySQL报错ERROR 2003 (HY000) Can‘t connect to MySQL server on ‘localhost‘ (10061)

    这个错误是新手经常会遇到的 本文主要介绍如何修复ERROR 2003 HY000 Can t connect to MySQL server on localhost 10061 1 登录到安装Mysql的主机 打开cmd命令行工具 执行命
  • uniapp SyntaxError: Unexpected token u in JSON at position 0 解决方案

    今天在做页面跳转传值的时候 一直出现下面的报错 后来查看了下文档 说如果你的JSON数据是在上一个页面传值过来的话 这时候在接收数据页解析JSON也会报该错误 因为此时并没有相关的JSON数据从上一个页面传递过来 可以通过判断是否为null
  • Flutter 信息贴

    框架学习 在 Flutter 中构建绘图应用程序 了解如何在 Flutter 中创建绘图应用程序 并探索 Flutter 在 CustomPaint 小部件的帮助下渲染和控制自定义 UI 的能力 在 Flutter 中创建可重用的自定义小部
  • 【IntelliJ IDEA学习之七】maven专题

    版本 IntelliJIDEA2018 1 4 一 maven全局设置 设置Runner 运行VM参数 Xms128m Xmx512m Duser language zh Dfile encoding UTF 8 二 maven项目 参考
  • 手把手教你springboot企业微信开发(一)

    手把手教你springboot企业微信开发 一 1 配置企业号 2 Springboot配置企业号 1 配置企业号 企业号登录 设置 网址是 https work weixin qq com wework admin loginpage w
  • 三天打鱼两天晒网C语言代码

    include
  • mongodb 正则-不区分大小写匹配

    1 正则查询 不区分大小写 i 设置开始字段 结束字段 其中某段匹配任意字段 name regex lslad cn options i 或者 name lslad cn i 2 踩坑记录 java中使用正则查询 name lslad cn
  • 使用 jQuery 创建滚动视图

    jQuery 是一个流行的 JavaScript 库 它简化了 JavaScript 编程 并提供了许多实用的功能和方法 在 jQuery 中 你可以使用 scroll 方法来创建滚动视图 下面是一个详细的教程 帮助你了解如何使用 jQue
  • 再谈Jquery Ajax方法传递到action

    之前写过一篇文章 Jquery Ajax方法传值到action 本文是对该文的补充 假设 controller中的方法是如下 public ActionResult ReadPerson PersonModel model string s
  • 计组(唐第三版)

    目录 前言 讲解问题 1 快速理解基本的电路符号 a 高低电平 b 高电平有效和低电平有效的理解及表示 c 基本的门元件 2 数电小白也能看得懂的74138译码器 c 74138译码器结构功能 c 74138译码器具体结构 3 唐书例4 1
  • 最详细的Python安装+Pycharm安装配置教程,从下载到安装配置

    最详细的Python安装 Pycharm安装配置教程 从下载到安装配置 本章节我们将向大家介绍如何在本地搭建Python开发环境 Python可应用于多平台包括 Linux 和 Mac OS X 你可以通过终端窗口输入 python 命令来
  • docker-compose实现容器任务编排

    项目开发中 往往都需要启动多个容器 容器之间又相互依赖 存在着启动的顺序 docker compose就是可以通过命令控制依次启动容器 容器编排工具可以帮助我们批量地创建 调度和管理容器 帮助我们解决规模化容器的部署问题 Docker 三种
  • PyQt5 按钮Buttons样式设计

    效果截图 PyQt 模型设计 PyQt 设计器截图 ui 源码
  • 存储IOPS指标说明

    二 IOPS 说明 2 1 IOPS Input OutputPer Second IOPS 即每秒的输入输出量 或读写次数 是衡量磁盘性能的主要指标之一 IOPS是指单位时间内系统能处理的I O请求数量 一般以每秒处理的I O请求数量为单
  • 材料阅读 - 四散的安全

    20201005 阅读了三篇与安全相关的文章 这里记录一下 1 以 威胁应对 为中心 看企业信息安全能力建设 这篇文章发表在了很多地方 发表的念头也比较早了 都过了两年了 对企业的安全能力 从架构上 最后到以后的安全产品都进行了介绍 同时也
  • 多态性 - C++中实现运行时多态的方式

    一 概述 C 中的多态性是指同一个函数可以有多种不同的实现方式 并且在运行时根据实际情况进行选择执行 在C 中实现多态有两种方式 静态多态和动态多态 静态多态是指在编译时确定函数的实现 包括函数重载和模板函数 动态多态是指在运行时根据对象的
  • 针对无人机航拍视频中动态背景下的目标检测

    目录 目录 传统目标检测技术 传统目标检测技术 1 帧间差分 通过连续两帧相同位置像素点间的灰度差来确定目标移动 但只适用于静态背景和目标单一条件的目标检测 仅适用于无人机悬停状态下的目标检测 2 背景差分法 通过预先设置背景 然后通过对检
  • “体育游戏第一股”投资未来,望尘科技走向价值兑现周期

    2022年的游戏市场 遗憾以疲弱之势落下帷幕 游戏市场规模与用户数量 均出现了小幅下降 显示出存量市场的典型特征 但与此同时 更多垂直领域的拳头产品 响应市场需求的精品游戏 却屡屡掀起热潮 去年随世界杯而来的 最佳球会 就是一例 最佳球会
  • C# 基础知识 (四).C#简介及托管代码

    暑假转瞬即逝 从10天的支教生活到1周的江浙沪旅游 在这个漫长的暑假中我经历了很多东西 也学到了很多东西 也认识到了很多不足之处 闲暇之余我准备重新进一步巩固C 相关知识 包括C 入门知识 C 并行开发 ASP网站等 这篇文章我介绍的是书籍

随机推荐

  • JS 地址截取 省市区 (含自治区,直辖市,县,自治县)

    方法一 通过js处理 var str 湖北省武汉市江夏区文化大道110号 var str 内蒙古自治区乌兰浩特市二区 var str 重庆市渝中区中兴路 var str 湖北省黄石市阳新县 var str 湖北省宜昌市长阳土家族自治县 va
  • 同步与异步的区别

    同步与异步的区别 最近在学习ajax 而ajax Asynchronous JavaScript and XML 是一种异步的JavaScript和XML技术 鉴于此 就先来了解下同步与异步的思想和区别 一 同步与异步 同步 同步是指一个进
  • LIBSVM入门

    一 引言 LIBSVM提供了多语言 java python和matlab 的SVM实现 可以便捷地处理分类或回归问题 本文记录基于matlab的LIBSVM学习笔记 二 环境搭建 LIBSVM下载链接 https github com cj
  • Vue3 + Element Plus 按需引入 - 自动导入

    文章目录 1 前言 1 1 目的 1 2 最终效果 2 准备工作 3 按需引入 3 1 安装插件 3 2 修改 vite config ts 文件 4 其他 4 1 ElMessageBox 使用时报错 4 1 1 Eslint 报错 El
  • B/S架构和C/S架构的定义和区别(不同点)

    一 B S架构和C S架构的定义 1 B S Browser Server 浏览器和服务器架构 比如百度 微博 淘宝等网站 包含寄户端浏览器 web应用服务器 数据库服务器的软件系统 用户只需要一个浏览器就可以访问服务 系统更新时候 只需要
  • 【操作系统】操作系统知识点总结(秋招篇)

    文章目录 前言 操作系统主要做了哪些工作 进程 线程 协程之间的区别 进程的组成部分 介绍一下进程的PCB 讲一下进程的五态 以及它们的状态转移 用户态和内核态是什么 进程在用户态和内核态之间是如何切换的 讲一下进程之间的通信方式 讲一下进
  • [Unity2D]Tilemap Collider2D只给部分地图瓦片加上Collider的方法

    Unity2D Tilemap Collider2D 给Tilemap中的瓦片网格加上碰撞器 绿色的边框就是碰撞器 需要注意的是 如果给Tilpmap加碰撞器 其整个Tilpmap上的瓦片都会加上碰撞器 在一个Tilpmap上 如果想让部分
  • mongodb监控工具mongostat

    mongostat是mongodb自带的状态检测工具 在命令行下使用 会间隔固定时间获取mongodb的当前运行状态 并输出 常用命令格式 mongostat host 192 168 1 100 27017 uroot p123456 a
  • CreateRemoteThread的使用(转载)

    先解释一下远程进程 其实就是要植入你的代码的进程 相对于你的工作进程 如果叫本地进程的话 它就叫远程进程 可理解为宿主 首先介绍一下我们的主要工具CreateRemoteThread 这里先将函数原型简单介绍以下 CreateRemoteT
  • Android 特许权限白名单

    1 前言 在项目开发中 需求 app中有恢复出厂设置的功能 分解这个需求的时候 第一反应肯定不是第三方app 恢复出厂设置肯定需要有系统权限 属于系统级的app 然后在看手机系统中的功能 恢复出厂设置功能属于设置模块 找到源码阅读 当然是能
  • 2017-7-17 2-2 不使用&&和

    include
  • tomcat下载和配置(简单,详细)

    下载 官网 http tomcat apache org 找到需要的版本 点击download 在download页面 选择需要下载的 分为压缩版和安装版 我比较推荐压缩版 省事解压缩就好 配置 首先 tomcat7 0以上版本不需要配置环
  • 提高map[key]=value的效率

    当关乎效率时应该在map operator 和map insert之间仔细选择 我们知道 这个表达式 m k v 检查键k是否已经在map里 如果不 就添加上 以v作为它的对应值 如果k已经在map里 它的关联值被更新成v 举例一 考虑插入
  • 搭建第一个Dapp应用(4)——搭建SmartDev-Scaffold——2021.5.3

    搭建第一个Dapp应用 4 搭建SmartDev Scaffold 一丶环境配置 Java gt JDK 1 8 Solidity 0 4 25 Git 下载安装包需要使用Git Gradle 大于6 小于7 使用gradle7会报错 二丶
  • JavaEE规范与系统结构

    JavaEE规范 JavaEE规范是J2EE规范的新名称 早期被称为J2EE规范 其全称是Java 2 Platform Enterprise Edition 它是由SUN公司领导 各厂家共同制定并得到广泛认可的工业标准 JCP组织成员 之
  • Jenkins之定时构建

    1 操作环境 1 Jenkins Jenkins 2 75 2 定时构建 1 定时构建语法 第一个 表示分钟 取值0 59 第二个 表示小时 取值0 23 第三个 表示一个月的第几天 取值1 31 第四个 表示第几月 取值1 12 第五个
  • 由java:local_policy.jar和US_export_policy.jar引发的“血案”

    起因 今天项目上线 上线后监测日志 发现由异常 开始查找问题 进而引发了 血案 线上日志报错如下 Illegal key size 画外音 看到线上项目出现问题心里慌的一批 赶紧扒拉出代码 一行一行对着报错日志查看 最后定位到 AES ae
  • 制作SD卡启动盘(编译烧写u-boot)

    一 SD启动盘制作 将我们的sdfuse q文件夹拷贝到虚拟机Ubuntu的共享目录下 sudo cp samba NFS FTP sdfuse q a 将文件夹复制到 home chen 目录下 cd sdfuse q 进入sdfuse
  • 西门子PLC s7-1200学习之路

    1 Introduction 最近因为一个项目需要使用西门子PLC 买了一个入门级的PLC s7 1200 并完成了一个PLC和PC通过TCP进行通信的小程序 为了防止活干完了 内容就全忘了 所以用一个笔记进行梳理和总结 入门一种语言 需要
  • 专访蒋宇捷:技术管理者应具备哪些能力?(转载)

    摘要 近期 本站记者采访了CSDN社区活跃用户 百度技术经理蒋宇捷 他认为一个合格的技术管理者应该具备深度认知产品 冷静决策 以及良好的沟通能力 还要秉持着技术源于一线 永远不能脱离一线的观念 蒋宇捷 西安交通大学硕士 现任百度技术经理 曾