我从导师那里学到的宝贵经验
2021 年 6 月 22 日,我有幸参加了富有创新精神的巴基斯坦旅游初创公司 Manaky 的面试。这一天对我具有特殊意义,因为自此我认识了我的导师:Touseef Liaqat。当时的面试安排在晚上 11 点,作为一名刚刚步入职场的新人,我对未知的面试过程感到紧张。
幸运的是,面试过程非常顺利,当 Touseef 给我提供了在 Manaky 实习的机会时,我激动不已。在谈话即将结束时,Touseef 询问我是否有其他问题时,我当时只关心实习是否有薪水,因为我迫切想开始工作赚钱。
这一天标志着我与 Manaky 以及与 Touseef 合作的开始。从一开始,Touseef 的卓越背景就深深吸引了我,他曾在一些我梦寐以求的知名科技公司工作。尽管取得了卓越成就,Touseef 仍保持谦逊和亲切,让人非常佩服。
我加入公司后有幸能与 Touseef 直接合作,得以近距离观察他的品质并从他的指导中受益匪浅。接下来,我想分享与他共事期间学到的 7 个宝贵经验。
不要害羞
我通过了面试,并于 2021 年 7 月 1 日正式加入了公司。在我上班的第一天,Touseef 安排了一次会议,热情地欢迎我。在会议中,他给了我一条极有价值的建议:“Sharmana nai hai, warna piche reh jayein ge”,意思是:“不要害羞,否则你很容易被忽视。”这些话触动了我,让我想起了大学时因害羞而错失的机会。尽管学术表现不错,我常觉得被忽视,更健谈的人似乎得到了更多的机会。
刚开始参加开发会议时,我感到非常紧张,甚至尽量避免开会。然而,Touseef 是一个富有智慧的人。他精心设计了一个计划,旨在帮助我克服害羞,以便我能积极参与会议。在开发会议中,他让我主持讨论,收集每个人的每日进展。他还坚持让我在周团队会议中展示我的工作成果。
在 Touseef 的培养下,我后面甚至有幸成为他的小组会议的讲师,教授他的学生数据结构和算法。他的指导和支持在帮助我克服害羞方面发挥了关键作用。
勇于面对更大的挑战
我从 Touseef 那里学到的一项重要经验是要敢于面对更大的挑战。那么,“更大的挑战”具体是指什么呢?它指的是那些具有广泛影响、涉及大规模系统、性能优化、安全等复杂挑战的问题。这些不仅仅是日常任务中的常规问题,而是那些能为业务做出实质性贡献的复杂问题。
据 Touseef 所说,专注解决这类问题有助于专业技能的成长和拓展。它能让软件工程师拓宽技能范围,深化技术专长,并积累处理复杂项目的经验。这种对具有挑战性任务的深入参与可以促进个人和职业的提升,为在领域内获取更有价值的机会铺平道路。
以我的经历为例,我在 Manaky 的最初几个月开始专注于提高网站性能的任务,这项工作充满挑战,因为网站性能缓慢可能涉及多个因素。在近两个月的时间里,我投入了大量精力研究和探索各种解决方案,并成功地将前端 JavaScript 包的大小从庞大的 1.1 MB 优化至精简的 370 KB。
这项任务产生了显著的影响,其效果让我印象深刻。它教会了我一条宝贵的经验:只要我们付出全力,一切都是可能的。完成这项任务后,我不再对任何看似不可能的任务感到畏惧。有趣的是,我成功地完成了后续 Touseef 交给我的每一个编码任务。
此外,这项性能优化任务让我深入了解整个代码库,我能迅速发现并解决问题,甚至还能帮助同事完成任务。值得一提的是,我在简历中特别强调了这一成就,它已经成为了面试中的热门话题。分享这一成就背后的故事给面试官留下了深刻印象,极大地增加了我在知名公司获得职位的机会。
通过博客分享知识
2021年12月,我接到了 Touseef 的电话,这一通电话成了我职业生涯的转折点。在谈话中,他询问了我的团队成员和当前项目的最新进展。我当时并未意识到,他即将向我提出一些宝贵的建议:通过写博客来分享知识。自大学甚至更早的时候,我就一直渴望写博客,但由于缺乏指导,从未迈出第一步。
Touseef 这样卓越的人士的一个特点是他们能激发和鼓励他人。在那之前,各种障碍一直阻碍着我开始博客之旅。每当我尝试开始时,总是浪费时间在琐事上,例如纠结于寻找完美的 WordPress 模板,或者尝试依靠自己的网页开发技能从头开始构建,最终无疾而终。
然而,Touseef 的指导非常简单直接:只需要先开始。他建议我使用像 Medium 这样的平台,于是我的写作之旅就此展开。我可以坦诚地说,写作使我成为了一名更出色的软件工程师。分享我的知识不仅整理了我的思维,还加深了我对各种概念的理解。此外,感受到互联网上的人们对我的博客的赞赏,是一种无与伦比的满足感。
除了个人成长,写作还为我带来了很多额外的机会。现在,我在网上的知名度不断提升,甚至以 Rabi Siddique 的身份获得了一定的认可。通过写作,我扩展了我的人际网络,并与该领域的同行建立了联系。
避免重复造轮子
在与 Touseef 的合作项目中,他一直强调利用预构建组件的重要性。一个难忘的例子是在 2022 年 1 月的一次公司黑客马拉松中,我们被分配开发一个类似于 Calendly 的会议调度应用。对于前端,Touseef 建议我们在线搜索现有模板,根据需求进行定制,然后集中精力解决核心业务逻辑。
最初,作为一名软件工程师,我对这种方法持保留态度。从头开始构建看似提供了学习新技术和获得成就感的机会。然而,随着时间的推移,我意识到我们作为开发人员经常在与核心业务目标无关的任务上消耗时间。因此,只要有可能,我现在会优先选择使用现有的解决方案或库来实现功能或项目,而不是从头开始构建。这种方法不仅节省了开发人员和公司的时间,还让我们能够专注于对业务成功真正重要的方面。
快速失败的策略
当我即将离职的几个月里,我领悟到了一条重要的经验。从 2022 年 11 月到 12 月,我们团队启动了一个新项目:在我们的网站上构建并推出了一个代码编辑器。我们的主要目标是迅速将这一功能呈现给用户,以评估他们的反应。我们深知在投入更多时间和资源进行深入开发之前,有必要验证先进行验证。
由于急于推出代码编辑器,我们采用了一种小不快跑的方法。我们的重点是迅速实现一个功能解决方案,而不是一开始就追求完美。目的是测试市场反应,看用户是否真正对代码编辑器感兴趣。如果反馈消极,或用户没有表现出兴趣,团队已准备好接受这一结果并转向其他方向。这体现了快速失败的策略,旨在通过迅速识别和解决项目中潜在的失败因素来节省资源。
然而,我们欣喜地发现,代码编辑器受到了用户的热烈欢迎。他们发现它有趣且易用。我们甚至发现竞争对手也开始注意,并为他们的平台开发自己的代码编辑器。受到积极反响的鼓舞,我们决定进一步投资于代码编辑器的改进和提升。
阅读的重要性
作为软件工程师,我们通常关注技能的提升。虽然我们经常依赖教程、在线课程、Google 和 ChatGPT 来增强技能,但有时会忽略一个重要方面 —— 阅读书籍。
去年六月,Touseef 强调了阅读书籍的重要性,我们在阅读上的时间投入也随之增加。阅读书籍的经历让我深感其对知识基础的深刻拓展。书籍在我们作为软件工程师的生涯中起着关键作用,不仅限于获取技术知识。这种接触多样化观点的机会挑战了我们的思维定式并拓宽了我们的视野。它促使我们批判性地思考,从不同角度考虑问题和可能的解决方案。此外,书籍为我们提供了从他人的成功和失败中学习的机会。
我清楚地记得阅读 Kyle Simpson 的 “You Don’t Know JS” 系列。这些书籍对我作为 JavaScript 程序员的成长产生了深远的影响。该系列帮助我深入理解了这门语言,使我在短短 1 年半的时间内晋升为高级软件工程师。
深入理解业务
作为软件工程师,我们常常专注于技术细节和编码问题的解决,而忽略了软件开发项目成功与其所服务的业务之间的紧密联系。深入理解我们的软件所服务的业务领域是一项关键技能,它能将优秀的开发人员与普通人员区分开来。
我的朋友 James Gaylen 曾经分享过一段很有深度的话:
“开发人员应深入了解企业业务,并从业务角度出发。编码只是其中的一项技能。”
无论是初创公司还是大型企业,主要目标都是创造收入并实现财务成功。作为软件工程师,我们的职责是通过开发与业务目标相符的软件解决方案来推动这一目标。为了有效地实现这一点,我们必须深入理解业务的核心原则、挑战和动态。我相信 Touseef 为了在我心中灌输这一核心原则付出了不少努力。
我希望你能从 Touseef 那里获得的知识和见解中受益。尽管我最近已加入新公司,但我可以坦诚地说,从 Touseef 那里学习的经历让我终生难忘。我渴望在新的工作环境中运用在 Touseef 的指导下所获得的经验和技能。
我想通过引用 Touseef 在我们合作初期与我分享的一句话来结束这篇文章:
“在创业公司中,你与同事建立了长久的友谊。你们作为一个紧密的团队,共同努力完成看似不可能的任务。这些共同度过的时光将成为你一生中最美好的回忆之一。”
本人摘自网络。
原创文章,作者:北大青鸟,如若转载,请注明出处:http://news.yy-accp.com/archives/16278