分类
职业

再谈谈远程工作,主要供老板们参考

近期有几个朋友找我咨询远程工作的问题,都是老板,因为种种原因,考虑给团队开远程的口子。我也很长时间没分享远程工作的感受了,所以再写一篇。

0. TL; DR

  • 不是所有人都适合远程工作;
  • 远程工作对团队的要求很高,对老板的管理能力要求也很高。

老板开设远程岗位、推行远程工作时务必要慎重。

1. to 老板

通用能力,集中办公也需要的能力,此处不再赘述。

1.1 加强前置沟通

首先是流程。远程工作,尤其是全员远程的情况下,充分的前置沟通非常重要。

因为彼此距离很远,沟通成本高了很多,随口一问一答不太可能,所以必须在动手前就把需求、设计、实施方案、验收标准、模块划分都沟通清楚,不然后面效率一定会收到影响。

老板要建立这样的流程并监督执行,直到大家养成习惯。

1.2 工作中沟通要积极,多留档

我厂默认异步沟通,回复时间半天内即可。所以有问题就要积极沟通;甚至不是遇到问题,自己规划了功能/界面设计,选择了技术方案,也要及时沟通。

这里的沟通可能只是发个消息给协作者,“我要 XXX 了”,“我打算 OOOO”。对方可能不回复,也没关系,因为主要目的就是加强沟通和留档。于是将来就可以回溯,其他人也能通过这里的记录了解到前因后果,做出自己的判断。

老板应该不断强调这一点,直到大家养成习惯。

1.3 要有验收工具

对技术研发来说,验收至关重要。对远程开发岗来说,自动化测试更显得重要。一方面,自动化测试可以节省大量时间,让开发人员知道自己产品的质量,并及时修改;另一方面,自动化测试可以避免 QA 和开发人员之间的矛盾,提升大家的工作效率。

测试工具推荐我厂的 Navlang 工具链。自动化工具选项比较多。

1.4 加强工具建设和流程建设

很多人不适合远程工作,很多人没有接受过远程工作的训练。招聘远程岗位,招聘成本很高,淘汰率也很高。所以与其寄望于招到合适的人才,不如加强工具建设和流程建设,提升团队管理能力,让更多人适配远程工作。

1.5 99% 想找远程工作的人,都不适合远程工作

很多人都想找远程工作,多半是因为他们对远程工作抱有不切实际的幻想。这点我深有体会。我当年也以为,远程工作,拿着现在的高工资,想在哪儿工作就在哪儿工作,只要按自己的想法完成工作,其它时间自由支配,潜水滑雪,多安逸。

实际上,远程工作会面临很多问题,比如电脑设备、网络情况,甚至办公桌椅都会成为问题。在人均颈肩腰腿痛的今天,随处工作基本上是一种奢望。

再加上工资降低,结果考核带来的工作压力,很多人可能会发现,远程工作并不如想象中美好。那么他能否应对接下来的工作,就要画一个问号。

更别提还有很多人远程之后根本无法保证工作效率。

2. to 员工

2.1 要有主动性

远程不同于集中办公,每个人都要有主动性,主动管理自己,也主动管理别人。

比如一个功能,前后端分离,我是前端,我把自己的做完了,就要去催着后端做,直到最终验收。他也一样,遇到前端 bug,他也要催着我改。绝不能被动等待对方完成。

集中办公的时候,可能有项目经理、可能有需求人、可能有领导盯着,上厕所吃午饭时随口一句就足够大家紧张起来。远程工作,必须大家互相督促才行。

2.2 远程工作并不美好

正如水往低处流,因为有引力有势能。工作也一样,如果一个工作非常爽,就会涌入一大堆竞争者,通过内卷把它的爽度抹平,直到这份工作与其它工作相比乏善可陈。

所以这世上没有很爽的工作。如果有,要么工作有问题,要么你有问题。

分类
职业

好书推荐《重构(第二版)》

前些天偶然看到,《重构》发了第二版,而且是以 JavaScript 作为范例语言编写的。于是我马上买了一本,翻了一遍,还是熟悉的好味道。在这里推荐给大家。

点击这里购买 。年前京东半价,现在稍微贵一些,大家可以等一等,或者自己凑凑单。

也可以扫码购买:

0. 我的编程启蒙

我的编程技能是自学的。最初就是看一些少儿科普图书,上面会教些计算机基础知识,和 Basic 编程。所以很长一段时间里,我都只会在 BASIC 开发环境下执行程序,而对如何让代码在任意环境下执行一无所知,这严重限制了我编程能力的覆盖范围。

幸运的是,等到我考上大学,正值第一波互联网泡沫破灭,Web 开发风生水起,Flash 蒸蒸日上,所以,只要会写代码,就有地方能跑,而且是一个大平台。有赖于此,我的编程能力可以稳步提升。

1. 《重构》(第一版)

但一直自学,缺少交流和指引,也大大限制了我的编程能力的发展。站在当时的角度,我并不觉得有什么问题;但是现在,我回顾自己的职业生涯,觉得那其实是很大的危机。如果就这么抹黑自学,毕业后以非科班的身份去社招,多半会陷入很多转行同学一样的尴尬境地。

幸运的是,我无意中买到《重构》这本书,并且看完了。这本书极大的开阔了我的视野,告诉我什么才是真正的编程、什么样的代码能事半功倍,以及除了完成业务之外,编程还有哪些工作。

于是,我不仅在日后的开发工作中取得重大突破(幼儿园全 Flash 官网),在未来的招聘面试里也能够脱颖而出,顺利入行。

以前的一篇博客里,我把《重构》列为对我职业生涯影响最大的书。

2. 《重构(第二版)》

相比于第一版,《重构(第二版)》又有两个比较大的改进:

  1. 产品类型升级,改成了大家更熟悉的电商订票网站
  2. 使用 JavaScript 重构代码,更适合现代前端程序员阅读

对于广大靠前端开发维生,或者想靠前端开发维生的同学来说,这本书能极大的提升你的工作能力,让你未来的工作事半功倍。对于那些跟我一样靠自学、半路出家的非科班程序员,这本书就更加重要了,它能告诉你什么样的代码才是好代码,怎样写出更好的代码,以及该怎么写合适的代码。


总之,推荐给大家。如果能使用我的 推广链接 就更好了。

分类
职业

改变你的环境,或者选择适合你的环境——聊聊“被”管理

群里有同学在抱怨,大意是:领导技术还没自己好;团队瞎搞领导也不管;老板不懂技术,天天催着赶活儿,不给 code review 等内训的时间;感受不到成长;等等。

坦率地说,年轻的我也有这种想法,而且很重(可惜我 2011 年之前的博客遗失了,不然可以翻出来给大家晒晒)。不过随着年龄愈大,尤其是参与创业的这些年,学会站在不同角度看问题,换用不同的思维模式之后,我的想法变了。

年轻的时候,我非常喜欢《倚天屠龙记》开篇何足道挑战少林寺那一段:一位猛人,来到不可一世的少林寺,打遍少林无敌手,少林寺高层一筹莫展。突然出现一位不在编的僧人,把他锤跑了。

换成现实世界,就是:我在公司是个普普通通的开发人员,除了前后桌,根本没人知道我是谁。突然有一天公司遇到重大技术难题,无人可解。这个时候我潇洒的戴上假发,上去把问题解决了。老板痛哭流涕,把前任总监就地免职,任命我为新的 CTO。

然则这并不会真的发生。现实世界里,不管你再看不起你公司(下面简称贵司)和你公司的技术,它会被一项技术拖死的可能性也微乎其微。它能够活着,多半靠的是你眼里不咋样的老板所赐。

决定你在公司地位的,大部分时间也不是技术能力。你的技术领导,可能来得比你早,刚好排到这个位置。虽然他技术不如你(只是可能),但是对于公司来说,够用了。老板不懂技术,不可能把他挪走把你放上去。

至于其它能力,比如情商、沟通能力、业务理解能力,其实也都和技术差不多。有优先级之分,但是都没有一票赞成/否决权。

所以选公司、选团队的时候,要先看行业、商业模式,这种赛道型的内容。比如我厂,做的是非常高端的 2B 软件,属于“有的公司自己搞不定,要花钱请外面的高人来搞定”这种需求。所以对技术的要求就很高,相应的,技术人员的天花板就很高。

如果你喜欢技术,就最好来这种公司,因为你的技术可以很容易的折现,并且上不封顶(理论上……)

相反,如果你不是特别喜欢技术,写代码更多是为了谋生,只是恰巧选择了程序员这份工作。那就应该选择一个模式相对基础,公司比较稳定,技术在其中主要做支持的公司。比如我的第一家公司 201——IT 资讯门户,对技术的要求是网页能打开,不要挂。主要挣钱手段是养编辑写文章,养销售卖广告。

在这种公司里你可以每年进步一点点,但工作稳定有保障。如果你有技术梦想,来到 201,然后发现领导的技术不如你,要求老板换你上。那不行,是你不对,你没有理解公司的商业模式。


总结一下,就是:尽量找到合适你的公司。老板不傻,领导不笨,大多数时候只是你们不合适。

分类
远程工作

远程工作需要的特质:愿意负责

本来想写“愿意背锅”的,后来想想还是不要那么标题党了。

前些天跟朋友聊天,聊到我厂的日常工作。他问我:“你们怎么解决人员互相不熟悉的协作问题的?Tower还是IM?”

我厂日常主要用 IM,包括文字或语音或共享桌面,但这并不是他要的答案。这位朋友是位产品经理,曾经多次向我抱怨说他们公司的前端太不给力,这不会做那不能做,他们产品设计,到最终实现总是大打折扣,产品人员不得不仔细核对每一项细节,并不断跟前端讨价还价,才能有所保障。

所以夏虫不可以语冰,从他的角度,很难理解我厂(全职远程)日常怎么才做能保证效率。

所以我回答:“IM 和文档。还有就是不要甩锅。其实我觉得,协同问题70%来自甩锅。”

“责任分清是不是甩锅?”他又问。

其实对于创业公司而言,最可怕的情况就是,没有大公司的命,得了大公司的病。在做出足够宽足够深的护城河之前,先琢磨怎么厘清责任;大家惦记的不是怎么把事情做好,而是出了问题不是我的责任。

对于远程创业公司来说,这个问题更加致命,因为这样要浪费非常多的沟通成本。所以我如实说出我的想法:“要看具体操作,很可能是。这里的问题在于,分清责任后,是只把自己的责任摘出来做,还是连带督促另一个人;就是分清责任之后,是选择做执行人,还是PM+执行人。”

“团队是合作关系还是里面存在管理关系?”

“合作,基本不存在管理。”

“督促另一个人时,对方如果不愿意怎么办?”

“说明那个人不适合在远程团队里。如果远程团队不能形成互相督促互相配合的氛围,工作效率多半是不够的。”

这两个问题其实是一个意思:你说督促就督促了?别人不听怎么办?其实回顾我的从业经验,大部分互联网公司都没有那么明确的上下级概念,也很少有人会去挑战督促者。大部分情况是,大家都不愿意出头(特有国情),但是有人出头,只要不犯傻,大家多半还是愿意接受领导的。

“挺好。”他最后总结道。

总结

远程工作,对每个参与者的要求都更高,除了能完成日常工作,更友好的合作精神,更主动的参与精神也非常重要。

希望这段对话对大家有帮助。

分类
远程工作

如何加入一家全职远程的公司

自从我厂开启招聘之后,陆续收到一些简历。除去一些明显不靠谱的,也有不少同学的简历看起来很好,但明显只是为“远程”而来,满脑子都惦记着远程之后坐在海边一边打望比基尼美女,一边啜饮鲜榨果汁,一边写代码的生活。却没有想过自己能给公司带来什么。

没错,我也曾这么幻想着,加入了我厂。加入之后的工作生活虽然称不上幻灭,但绝对和预期不同。所以今天,我决定写点什么,让大家了解全职远程的真实状态,同时理解远程的需求,以便更好的抉择今后的职业道路。

以下的内容不仅包含远程,还有“小型创业公司”。我还没见过中型或更大的“全员远程”公司,所以姑且认为这种组织形式和大多数老板的管理水平,暂时无法负担更大规模的协作吧。

分类
远程工作

远程工作一年半,聊聊远程的问题

2017年8月,我加入现在 OpenResty Inc.,开始我职场生涯第一次全职远程的工作。如今,一年半时间过去,我发现远程工作并不如我之前想象的那样美好,还有很多问题是我一开始没想到的,这里记录一下。

分类
职业

我的知识变现 2018:再见

2017年的时候我开始尝试知识变现,然后花了大约一年的时间,发现自己其实并不适合这个领域。当然最重要仍然是经济问题:要达到我当时的生活水平,我需要投入远远不止一年的时间,而我家庭情况不允许这样做。

2017年下半年,我幸运地找到了一份全职工作,然后开始慢慢告别知识变现 。

2018 年年初做计划时,我仍给自己定下一些计划,包括每天在 SegmentFault 上回答一个问题。但没能坚持下来。因为很多问题并不值得回答,很多人也不会问问题。我每天在寻找合适回答的问题上都要花费很多时间。

我后来总结,很多人其实并不适合从事开发工作。并非每个人都喜欢学习、愿意改变习惯、提升工作能力。很多人只想把这个事情当成一个工作,因为看起来,软件开发既轻松,收入又高——“总不能进工厂吧”他们说。这些人的目标是勉强满足老板/客户的需求,他们的理想是“不用工作”。

问问题的时候,他们只想知道某某某问题的解决方案是什么,他们并不关心前因后果,也不想理清自己的思路。即使问题非常愚蠢,即使你的答案已经非常接近他们要的方案,他们也无所谓。

这让我非常不爽,因为跟我的理想差异巨大。我喜欢写代码,想把程序员作为终身职业。我喜欢研究写代码的技巧,通过学习我能获得非常大的成就感。我也很乐意分享这些知识和技能。然而作为非专业培训人士,我很难超出自己的体验做分享,也就很难提供给他们合适的知识产品。

所以我后来也开始慢慢转变态度。早先只要有人问问题,我都知无不言,言无不尽,做一个最好的引路人。接着我发现这样做并不好,除了浪费自己的时间,其实客观上也在浪费那些“不合适的人”的时间。所以我现在倾向于,如果我认为一个人不适合学习编程,我就早早的拒绝他(昨天就有一个人被我怼出群了……)。

好吧,所以总结一下我的知识变现 2018:再见,知识变现。

分类
公司

Welcome to Navlang

过去两天,我厂在杭州召开了 OpenResty Con 2018,很多 OpenResty 的社区的小伙伴分享了很多使用 OpenResty 的心得。春哥也分享了 OpenResty(包括商业公司 OpenResty Inc)接下来的计划和未来的方向。说实话我已经很长时间不参会也不关心会了,因为很多会营养太少,商业太过。不过我不得不说,我厂的会干货真的多。

回到主题,我也趁机搞了一个闪电演讲,介绍我厂的小语言之一——Navlang。遗憾的是,准备的不算充分,时间也比较短,所以介绍的不够清楚,导致好几个同学来问细节。

既然已经公开我以后也会分享一些实现细节和心得。感兴趣的同学可以先看 Slide:

开发这个语言的时候,我不太适应 Perl,也不太适应在春哥的要求下写代码,所以表现并不理想。如果有机会我还是希望能继续贡献 feature。

另外,受到 Navlang 的启发,我觉得可以搞一个 TechLang,用编程的方式录制视频教程。将来有机会搞一下。 

分类
远程工作

理想的远程办公咖啡厅

昨天 @Easy 老师发了一条微博

之前问过一个问题:「在共克时艰和消费降级的大背景下,有哪些行业和生意会逆流而上呢?


昨天和墨多扯淡,他说搞一个「面向美元市场」但是「研发在国内」、「销售完全依靠网络」而且可以「远程办公」的「商业SaaS/APP」是最符合「时代的进程」的。

因为:

① 收入直接是美金,扛贬值,无管制。

② 经济如果下行,国内成本会进一步降低。

③ 一线城市房租房价高涨,远程办公可以吸收足够优秀的同学去二三线城市。

④ SaaS/APP 不好搞的话,其实外包也行,但要做好外语沟通和客服。还可能需要一个外语好的产品经理


我问他为啥不搞一个,他说懒

我不太看好这个想法。原因如下:

  1. 想要做的正规,必须给国内的工作人员发工资,上社保。当然可以大家协商发多少人民币,多少美元,不过维持家庭开支钱不会少,多半整个工资都发掉了。
  2. 发币的话,我是信不过……
  3. 远程工作并不适合所有人,有些人(比如前文中的小弟)可能在办公室里能发挥100%的战斗力,回到家连一半都做不到
  4. 说了半天都跟项目无关,其实项目本身也有很大风险

如果让我说,最合适的项目是做远程办公咖啡厅,类似 3W 咖啡或者车库咖啡之类。遗憾的是,这两家我都没去过,不知道里面办公是什么体验。不过我去过贝塔咖啡,咖啡部跟一般咖啡厅一样,并不舒服。结合我两年的远程经验,说一说理想的远程办公咖啡厅吧:

  1. 桌椅高度要合适。
  2. 可以租用显示器,借用笔记本支架。
  3. 可以租小柜子存放私人物品,不用太大,游泳池那种小的就行,放个充电宝、随手带的小物件之类。
  4. 咖啡符合一般品质,电信能达到星巴克品质。
  5. 交通方便,不需要营业太久。

我觉得价格可以在星巴克基础上上浮二三成(咖啡30+,饮品40+),这样我也愿意接受。其实大部分需求共享工位都能满足,但是利用率太低,而且咖啡厅嘛,听起来 B 格高一些。

分类
远程工作

远程办公的环境选择

两年远程工作经验,给楼上各位分享一下固定工位的好处:

  1. 稳定性,受环境影响小。图书馆位置很紧张,尤其暑假;咖啡馆适合写代码的位置并不多,比如没有插头,比如桌椅不合适,比如旁边有人在连吃鸡;家里全是噪音源,老妈老婆孩子狗。
  2. 可以放显示器。这个其实很重要,笔记本的位置很低,使用时处于低头状态,脖子非自然弯曲,久而久之强直性颈椎病,手脚麻痹。不是耸人听闻,我现在已经不敢久用笔记本,大大减少了在咖啡厅的时间。 

坏处:

  1. 费用高。广州工位租金普遍在 1200/月以上,最便宜的方圆 E 时光 600/月,一年下来 7200,可以买 iPhone 了。
  2. 利用率低。远程工作不考勤,随时可工作。我厂老板在美国,早上起来第一件事就是翻聊天记录,很可能接下来就开工,弄完到午饭时间了,一上午没去;天气热,不想走路,不去;停车费贵,不去;老婆 /朋友 /老妈 /孩子要去某个地方,当司机,不去……一年下来一半时间都空置。
  3. 网络不好。共享空间共享宽带,均下来每个人都是小水管,我经常开手机热点,不然太影响效率。
  4. 冷气不足。相对于商业空间默认 24、25 度的配置,共享办公几乎不会低于 26,女性多的地方经常 27、28 度,热死个人。

我已经退掉了租的工位,准备还是自我调整:

  1. 工作集中在上午和下午 5 点前完成,基本和孩子上幼儿园时间重合
  2. 跟家里沟通我需要独立的工作环境,他们也渐渐知道怎么配合了
  3. 中午出去觅食,顺便在咖啡厅坐几个小时,充分利用免费停车的时间

V2原帖:成都有没有自由职业的同事想一起租个办公室啊?