7

最近关于工作的几点思考 - sherlockyb

 1 year ago
source link: https://www.cnblogs.com/sherlockyb/p/16332487.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

最近关于工作的几点思考

吾日三省吾身,记录一下近期关于工作的几点思考。

  1. 好记性不如烂笔头,随手记录的习惯永不过时。

举几个例子。

  • 在项目管理时,通过 Microsoft Excel 或 Google Sheet 制作完整的进度表。表的内容主要涵盖关键目标,对应的 owner 以及指标,可采取总分的方式;可以日或周为单位定期更新,更新频率取决于项目的不同阶段。比如在前期,以日为单位可更及时地暴露问题并解决,到中后期,项目已趋于稳定,调整为以周为单位降低频次,也有助于提高效率,毕竟频繁的同步会也是需要时间成本的。
  • 在用 Jira 的 story/task 追踪任务时,可利用其 comment 功能,每一个阶段性的进展都可以通过追加 comment 的方式来记录,这样,通过 comment 列表就可以一目了然的看出任务的完整进展情况。
  • 当长期处理一个问题时,如 dive deep API 的 spike issue、接入 SEAuth 等,用 wiki 等阶段性地及时记录遇到的问题或新发现是个不错的习惯,也便于后续总结时有信手拈来的素材。
  1. 以目标为导向,Try any way。
  • 在做属性抽取时,抽取方法不停地迭代,先后经历了 Dictionary、OCR、NumberType、Machine Learning、Kencyclo、Regex 等,其最终目的都是为了提高抽取的 coverage 和 precision。
  • 还是属性抽取,有 A 和 B 两个表示长度的属性,仅仅是单位类型不同,但 A 的 coverage 要远大于 B,此时借助单位转换,用 A 抽取的结果,通过单位转换来抽取 B,最终将 B 的coverage 提升 50%,这是在原有的属性抽取框架下很难做到的。这个方法也衍生出后来的通过 metric 比较好的属性来抽取其他属性的新思路。
  1. 在项目初期,定期的小组内部 dive deep 会议,及时交换想法,同步发现的问题并讨论如何解决,不仅能规避重走弯路,也能提高生产效率,集思广益,最大化团队力量。

比如最近在做的 AWS cost saving,每周一次的 dive deep 会议,除了更新进展,更多的是交流分享各自在做的过程中产生的困难、启发、最佳实践等,提升整体的效率。

  1. 切勿眼高手低,要有匠心精神,即便是小的功能点,也是可以做到极致。

很欣赏组里的一位前辈,很小的功能点,也能站在使用者角度仔细打磨,最终实现的版本堪称 perfect。

  1. 多从用户角度出发,简单易用,磨炼产品思维。

例如系统中 offline job 的UI,经组里一同事优化后,排版紧凑明了,体验感一下就上来了。

  1. 自测很重要,盲目的自信是危险的,即便是很小的改动,也需要测试验证,往往能发现意想不到的问题。

这个道理人人都懂,可是能严格执行的少之又少,真的毫不夸张,工作中遇到的各种盲目自信的人太多了,包括笔者自己,偶尔也会犯这样的错误,又该反省了……

  1. 对已有代码的改动时,修改和 review 都要谨慎,核心代码更不用说了,即便是一行代码也存在风险。

对已有的老逻辑要抱有敬畏之心,在吐槽写的如何如何烂的同时,也要思考当初为何会这样写,有什么特殊考量的地方。

  1. 效率的提升应该是一直在路上,没有最快,只有更快。用系统自动化代替一切费时费力的重复性人工操作。

比如我们做属性抽取时需要定期追踪 metric,最初都是每周由 owner 手动更新一次,后来用自动化的 job 来定期生成 metric 并在系统中可视化展示,省事多了。

  1. 当遇到比较耗时的或重试多次都不行的问题时,不要继续重复忍受或直接放弃,而是换个思路,积极想新的办法解决。

比如最近遇到的一个问题,使用 GitHub 时,网页访问正常,但通过 ssh 合并代码时,要么就很慢,要么就因为 SSL_ERROR_SYSCALL 错误而部署失败,重试了不下 20 次,最后还是通过 Google 找到答案,大概率是域名遭到 DNS 污染,可以通过修改 host,将 GitHub 域名指向真实的 IP(从 ipaddress 获取),并刷新本地 DNS 缓存,一下就顺畅了。

  1. 对未知或不熟悉的事物有畏惧感是人之常情,总觉得挺复杂,很难。其实接触后就会发现并不难,再进一步了解后会发现还是你所熟悉的配方,所以要勇于迈出第一步!

工作中难免会不停地接触新的东西,对于一项对你来说新的技术,先从它的官网 user guide 开始,是一个不错的选择。其实生活中也是一样的,敢于尝试新的事物,跳出舒适区,能让你收获新的东西。

  1. 写文档对于程序员来说是最大的挑战。越是不想写,越拖延,恶性循环中。俗话说,万事开头难,先把标题搞定,然后再把大纲搞定,确定要写哪些内容,整体框架出来了,然后再逐个往里填就是了。

说写文档这个事儿是最大挑战一点也不夸张,有时候可能憋一上午都挤不出几个字儿,比写代码难多了……

  1. 个人优秀是一回事儿,如果能激发队友潜能,让整个 team 更高效,才是更牛逼的。

放手,鼓励并相信队友。举个栗子,系统在本地启动时遇到 https 服务无法访问的问题,让小伙伴自己尝试解决,并给出相关的参考链接,最终他成功解决问题并还整理出简洁明了的 guide wiki,挺好的。

本文作者:sherlockyb
首发链接:https://www.yangbing.club/2022/05/31/Some-thoughts-on-work-recently/
许可协议:本博文采用 CC BY-NC-SA 3.0 CN 许可协议,转载请注明出处!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK