软件工程发展趋势

注册

 

发新话题 回复该主题

如何成为一名成熟的软件开发工程师 [复制链接]

1#
福建白癜风医院 http://m.39.net/baidianfeng/a_5774257.html

尊重别人和自己不一样,也尊重自己和别人不一样。这是我们在理想汽车学到的。

编辑

马谍飞摄影

他的故事III

本期受访人:老张

智能驾舱应用软件负责人

9月,理想ONE的OTA2.2发布,我们上线了全新的应用中心App,网易云音乐等热门应用软件终于“上车”。“有个理想”找到智能驾舱应用软件负责人老张,想聊聊背后的故事。

结果,他没讲故事,而是提了一个问题:如何成为一名成熟的软件开发工程师?以下三个细节:1、关于外表:跟老张的首次见面,他穿着一件超人“钻石logo”T恤,很典型的IT男打扮。问:“你是超人的粉丝吗?”答:“不是啊,随便穿的。”2、关于股票:他认为,长期持有某一只股票,需要逻辑+信念,但全靠信念是不行的,很多人刚开始信念很强,可能过两天别人说的不一样了就坚持不下去了。“还是要有很强的逻辑去支撑。”3、关于人工智能:老张喜欢一部叫做《黑镜》的英剧,主题是科技对人性与生活的重构。问:“如果有一个人工智能的完美女友,你会选择她吗?”答:“不会,我更喜欢活生生的人。”但谈到自己软件开发的工作,老张则是另外一种态度:“写代码很简单,对就是对、错就是错,一旦错了那99%就是自己错了,机器不会错。现实世界太复杂太累了,我喜欢代码世界。”

就类似这样,我们整场5个小时的无休息对话都洋溢着一种“放轻松”的氛围,老张看起来不热血,不丧,不企图控制,不过度依赖某一种观念,总是能看到相反的意思,头脑冷静,幽默。

总之,是跟“强迫症”完全相反的样子。

他始终在强调两点:一、尝试换一个角度看问题;二、不要做完美主义者。关于一。“之前有个朋友,天天晒娃,我觉得他有病,再说那娃长得也不好看。后来自己有了娃,就理解了晒娃的人了,这种幸福没道理,单身的时候不可能理解。”很多时候,立场决定看法。观点A:你要坚持自己的特点;观点B:你坚持的东西不一定对。二者矛盾吗?李想常说,当基于一个价值取向的时候,就可以坚持自己和别人不一样。理想汽车鼓励团队不要轻易改变自己,因为在一个网状组织里想弥补一个人的缺点太容易了,价值是优点,但往往优点和缺点就是硬币的正反面,把硬币另外一面毁掉了,这个硬币也不能用了。关于二。产品经理与工程师有天然不同的视角。比如,工程师会吐槽产品经理“既要也要还要”,但资源是有限的;产品经理会吐槽工程师“喜欢炫技”,自己的代码一定要很高级很完美,否则不想交付。老张有个标尺,认为各方力量的博弈过程,标示了不同软件开发工程师之间的差别:码农:单纯满足产品经理的需求,是一个合格的开发者,但不是一个合格的工程师;软件开发工程师:具备基本的产品常识,渴望知道每一个需求的Why;成熟的软件开发工程师:接受凡是工程皆无完美,工程师要尊重市场节奏,理解公司、理解成本。老张说,“我们是为用户服务的,不是为强迫症服务的。”——代码能力是基本盘,但代码永远不如人重要。养成如上思维习惯,可能与认知有关,也可能与性格有关。对老张来说,与和谐的家庭也有关。“我老婆她之前给老板做助理,从一个全新的子公司一点点做起,很了解一些人事处理、公司运作的事情,她沟通能力很强,教我很多事情。”问:你老婆和你谁更聪明?老张答:她聪明。如此作答且不假思索地作答的软件工程师是少数。家庭关系对他来说是一种养成,夫妻俩让彼此成为更好的人。对孩子也是养成:“我俩有一个观点,就是不要给小孩设置任何限制,她想尝试什么都可以去。我们大人其实无形之中给自己设了很多限,你可能在意别人怎么看你,可能不想再了解旧的事物,就很容易就固步自封。”

“保持一个开放的心态”,这是他与世界相处的方式。36岁,他说自己依然在探索世界、探索自我。

自我,即知道我是谁、我要去哪。我是谁——老张年在东北出生,后在河北长大,小时候喜欢看《电脑报》(很多80后的科技启蒙读物),高中时代经常在学校的机房和校外网吧转悠,大学修了计算机科学与技术专业,“当年也不知道将来要做什么,反正就是有点兴趣。”我要去哪——职业选择,跟随国内的几次科技浪潮:互联网-移动互联网-智能电动车,一直在赛道上,年加入“车和家”。“每个人都被时代大潮裹挟着前行,有的‘流’是上升的,有的‘流’是下降的,重要的是识别并选择上升的‘流’。我毕业的前十年赶上了安卓这个上升的‘流’,现在在智能电动车这个‘流’。”图片来源:车主

他的故事IIIQp>工作的吸引力是什么?

做一名软件开发工程师,老张出于许多程序员的共同之爱:“享受造物的快乐。”如今,智能手机的应用已经相对成熟,沉淀出行业共识的标准,工程师可发挥的空间在缩小。而智能车机时代大幕开启,场景更为复杂,工程师有大把空间去探索和创新,各个品牌也可以趁机做出自己的差异化优势。当然,代码是对现实的抽象,现实永远不能穷举,尤其是智能车机的使用场景比手机要复杂得多,焦虑常伴左右。Q:工作中不得不忍受什么?软件开发工程师最大的痛苦,就是飘忽不定的需求。我们见过很多软件工程师“躺平”,一位知乎用户写:“加班就算了,还要忍受重复劳动、无效产出,谁是真的爱技术呢?还不是为了活着。”描述了许多从业者的现状。团队前一阵子刚刚有一位伙伴离职,就是上述原因,“需求来回改了好几次,中间做的一些工作重复而无意义,他有点接受不了。”如何评价和处理此类事件,老张有双重身份:1、一名软件开发工程师;2、一名管理者。作为1,“把‘自我’缩小——站在一个更大的视角看待这类问题(损失),否则当你没办法理解的时候,一定会掉在自己的牛角尖里,只有走出来,才能看到整体,知道事情的来龙去脉,才能做到理解。看待问题有很多个角度,自己的角度、别人的角度和整体的角度。这是我这几年入职理想汽车学到的。没有这个心态,麻烦会非常多。”作为2,“我心里知道是什么样的事情是对的,什么样的事情是不对的,但是不对的事情要干,对的事情也要干。很多时候都是一种‘模糊的正确’,没办法一刀切。”“模糊的正确”是一种投资理念,有时候也是生活的体感。形容这种体感就是,不强求某一种结果,保持开放的心态,去认识、去接纳,去体验这个复杂世界的多样化事实。就像投资股市。交易江湖历来有两大门派,一派是追涨杀跌,一派是抄底摸顶,背后可能都是性格使然。但无论是哪一派,都有人赚,都有人赔。我们要接受哪种理论?能否有足够强的信念去坚持?“归根结底,这是找到一个适合自己的方法论的过程。世界很大,人和人都不相同。”

??

编辑后记在理想ONESOP(开始量产)之前,老张团队做过一次长达几个月的性能调优,尽全力消除软件卡顿。最开始砍一波(内存占有率)大家都比较容易,优化一下都会有效果,但是越往后就越难了,所有应用软件都优化过,还要想其他的办法继续优化,“真的是一点一点抠着优化出来。实际上,大家单拎出来一个自己的应用都没问题,但放在一起就有问题。那时候我们几个天天晚上9、10点跑一圈机场高速,看看卡不卡。”这是老张所能讲出的“最难忘的故事”。一如其他话题,没有情绪细节,没有导向特别精确的结论,或者说,拒绝没有特定条件约束的结论。当被问到“如果满分分,你给自己的生活打多少分?”他想了想,回答“80分。”“扣了20分,是觉得应该更合理地安排业余时间,写一个股市分析的应用程序。这个程序可能有用,也可能没用,重要的是写的过程的快乐。就像谈恋爱。”点击下方卡片
分享 转发
TOP
发新话题 回复该主题