ARTS - Review 补2019.2.27

Developers — here is the best WHY to quit your 9–5 job

开发者 — 这是你退出朝九晚五工作的最佳选择

  • prowess n. 非凡的技能,
  • fret v. 苦恼
  • meagre adj. 微薄的
  • compensation n. 补偿
  • supervise v. 监督,管理
  • console v. 安慰
  • come across 偶然发现
  • unilaterally 单方面的
  • applauds 鼓掌
  • metal n. 金属
  • carpentry n. 木工
  • manufacturing n. 制造业
  • colonies n. 殖民地
  • boycotted v. 拒绝购买,抵制boycott过去式
  • harmoniums 和声
  • despite prep. 尽管,即使
  • clutter v.杂乱,.
  • gargantuan adj. 巨大的
  • Archaic adj. 过时的
  • daunting adj. 望而生畏的,令人气馁的
  • Democratization n. 民主化
  • unpredictable adj. 不可预知的
  • stark adj. 无修饰的
  • notwithstanding adv. 虽然,尽管
  • predict adj. 预测

A senior dev whom I respect for his technical prowess called me this morning. He called to fret over the meagre 12% raise he got, against a junior dev working under him and got 40% raise — his compensation now totaling 85% of the senior dev supervising 10 other junior devs like him.

I didn’t know how to console him. I gave him the best I could — by listening to him for 30 long minutes.

Then I realized it wasn’t the best thing I could do for him.

一个我对他技术非常敬佩的高级开发者早上给我打了电话。他说对于他的收入12%的增长很苦恼,而他的手下一个初级开发者增长了40% — 他的报酬是和85%的像他一样管理着10个初级开发的高级开发者一样。

我不知道如何安慰他。我给了他我认为能做的最好的 — 倾听他说了30分钟。

然后我意识到这不是我能为他做的最好的事。

This morning I came across a news item about Palitana’s Harmonium reedsthat Bollywood movie artists unilaterally applauds. Run by mostly uneducated metal and carpentry workers — this Indian town took up manufacturing them to serve British dynasty in 1902.

Their fortunes turned after world war II, when most British colonies boycotted goods manufactured in Germany, harmoniums included. The 114 year old firm that professes in this art is still leading Google search result for phrase “Harmonium reeds” globally. It is supplying worldwide through amazon too.

Key to their success is not automation, but deep understanding of the craft, improved manually over generations.

That, combined with understanding for industry needs.

Today, despite automating most of the manufacturing, Palitana’s reeds are still tuned manually to produce most melodious tunes - a USP that couldn’t be taken away by 3D printers at least until next 50 years.

It’s a lesson — not in improvising one’s craft, but in figuring out what must be optimized, what must be outsourced to machines, and what must be refined through one’s own passions.

这周我偶然看到一个关于 Palitana’s Harmonium reeds的新闻,宝莱坞的艺术家单方面为之鼓掌。1902年,这座印度小镇开始制造它们,为英国王朝服务。

他们的财富在第二次世界大战后就转变了,当大多数不列颠殖民地在德国大量生产商品, 也包括和声。114年的电影艺术底蕴依然引领这"和声风琴"谷歌搜索结果.他也通过亚me讯供应全世界。

他们的成功不是自动化的,而是深入理解了工艺,经过几代人的改进。

这样,合并并理解了工业需求。

今天,尽管大部分制造业自动化了,但是需要指出哪些需要被优化,哪些必须外包给机器,哪些必须通过人的热情来提炼。

Senior Developer is dying (a definite death)

In programming world, too, craft is being lost gradually. A senior developer is losing his / her edge to:

  • Online IDEs (JSConsole and its ilk) — super easy to run your code on the fly. Bye bye clutter of buttons and panes that senior dev went through to make it work.
  • Open source repos and forums, without relying upon gargantuan API documentation that senior dev went through to put it together
  • Training videos, without relying upon archaic publication books that senior devs could only peek into to get the hold of it — at the expense of his family time during weekends.

True, senior devs always create building blocks that can be used and re-used by junior developers. But the balance in rewards highly tilts in favor of the later.

高级开发正在死亡(一种明确的死亡)

在编程世界,工艺也逐渐丢失。一个高级开发正在丢失他的技术边缘给:

  • 在线IDEs, (JSConsole和它同类) — 非常方便在线运行你的代码。和高级开发经历的杂乱的按钮和面板才能工作的情况说拜拜。

  • 不需要高级开发过去依赖巨大的API文档,开源库和论坛把他们合并到了一起

  • 练习视频,不需要依赖过时的工具书, 像高级开发花费宝贵的陪家人时间

    诚然,高级开发经常创造被低级开发经常复用到的模块,但是回报的平衡高度依赖后者。

    We are already living in the tech world where experience adds value to the product life cycle, but not to the product itself.

    An experienced developer will know where to find resources to make it work — but is less likely to go further than that. Not because of lack of passion, but because of lack of reward and motivation. And it is this later truth that is more daunting, because, let me just say it:

    To a company, a senior developer is a box that keeps its marbles together.

    Technical reasons behind this are:

    • Democratization by internet
    • Exponential volume realized from modularization — ability of software to be built on top of each other.

    Business reasons are more visible to everyone. A startup employer is more likely to hire a junior dev over senior one who will demand 1.5x-2x compensation. A senior dev is justified only over a team of junior devs — that too on a project scope basis, and only with critical mass of the team.

    我们早已生活在科技给产品生命的时代,但是不是智能时代。

    一个有经验的开发者会知道去哪里找资源解决问题 — 但是不太可能走的更远。因为缺乏耐心,缺乏激励和动力。正是后来的真相更让人望而生畏,因为只会让我说:

    对于一个公司,一个高级开发者是一个会多种技能的工具箱。

    科技理由随后是:

    兴趣民主化

    通过模块化实现的指数量-软件相互之间的能力

    商业原因对每个人来说可加可视化。初创企业更可能雇佣初级开发而不是高级开发,后者将要求1.5-2倍报酬。一个高级开发只在组里全是初级开发才有效 — 仅仅是哪种项目组里,起着关键作用那种。

    To keep justifying one’s place as a senior dev, one has to

    • Keep optimizing processes — batch files to dockerization
    • Keep digging up languages that could optimize something that doesn’t necessarily need optimizing
    • Keep inventing mundane tasks within existing products that customers don’t always use
    • Polishing soft-skills to remain in good books of Who’s who, something that was originally expected of management & sales people

    Financial reward of becoming a senior developer in particular technology is highly unpredictable. Stackoverflow developer surveys of 2018 and 2019revealed stark contrast in highest paid technologies. Surveys notwithstanding, one can always predict which tech to go into, but one can never predict which tech to become senior into. Obsolescence of technology is always looming.

    Of course, popular advices says you can keep learning new languages by spending sleepless nights and precious holidays, but that does not make you senior in each of them.

    A guy with 2 years experience in Kotlin can outrank your interview chances even if you knew Java for 8 years, and learned Kotlin in 6 months, if HR isn’t smart enough. Even if you get an interview, salary becomes your Achilles heel.

    Developer markets like China and India are huge factories of junior developers who are not holding software degrees — a fact lately replicated by other markets through freecodecamp, codeacademy and hackathon cultists.

    为了保持高级开发的地位,他需要做

    • 持续优化流程— 批量文件容器化
    • 持续挖掘语言中需要优化的地方
    • 在客户不经常使用的产品中持续发现普通问题
    • 磨练软技能,使之保持在“谁是谁”的好书中,这是管理和销售人员最初期望的。

    成为一个高级开发尤其是一个技术开发的财务奖金是不可预测的。Stackoverflow 2018和2019开发者调查显示高收入人群的鲜明对比。尽管调查显示,人们可以预测全面进入哪个技术,但是无法预测哪个技术会成为高级技术。技术过时总是迫在眉睫。

    所以,流行建议是你花费珍贵的休假时间和睡眠时间持续学习新语言,但这并不会让你在哪一个变得高级。

    一个有2年经验的kotlin程序员可能比拥有8年Java经验的你获得面试机会,实际学了6个月kotlin,如果HR不够聪明。尽管你获得了面试,但是薪资会成为弱点。

    像中国和印度这样的开发者市场是大型的初级开发者工厂,他们没有持有软件学位,这一事实也被其他其他市场如 freecodecamp, codeacademy 和 hackathon cultists 复制。

Final push towards escape velocity:

向逃跑速度的最后推力

It is not age-old wisdom. It is rule of the jungle. Markets can be brutal, and you must bow to demand & supply every time it doesn’t suit you.

这不是老年智慧。这是丛林法则。市场是残酷的,你必须每次在不适合你时候向供需低头。

When you are no longer valued for the character you play, it is time to leave the stage and set up your own drama.

当你不再对你扮演的角色产生价值,是时候离开舞台启动你自己的的表演了。

Today, a non-tech founder can purchase a booking app template and start pitching to investors. Oftentimes, they hound senior developers to sweat out working demo for them while they create glossy presentations.

今天,一个非技术创始人可以购买一个预定的应用模板开始向投资者推销。通常情况下,他们在制作精美的演示文稿时,让高级开发为他们的演示付出大量精力。

The two options:

The names they give you range from offshore contract dev to a CTO. The compensation can range from$500 to 5% equity (of $0 revenue). You will sell your expertise, most probably for the best of the 2 options: $500 in hand, rather than 5% of uncertain future. Off course, as CTO you may get your usual salary, but it may be substantially less than your market counterparts because you are a brick in the base that’s supposed to support the building, not a painted wall to attract the premise visitors.

Later on, you will see several sales executives cruising ahead of your compensation + stocks just because they supposedly bring in the customers.

两个观点

他们给你的名字范围从离岸合同开发到一个CTO。薪酬范围从500美元到5%不等(收入为0美元)。你将会售卖你的技能,很可能会是这两个选择中的最好的一种:500美元到手而不是5%的不确定的未来。当然,作为CTO你可能获得一般收入,可能比你市场同行少,因为你是支撑大厦的基础砖石,不是吸引客户的粉刷墙。

The third alternative:

第三个替代品:

What you miss out on is the 3rd option that is never presented. Why not join them as competitors rather than collaborators? Technically, you possess an edge that even a Harvard or Wharton executive is eager to suck upon.

你错过的第三个从未出现的选项。为什么不作为竞争对手而是合作者加入他们?技术上讲,你拥有一种优势,即使哈佛大学或沃顿管理人员也渴望得到的这种优势。

What you miss can be summed up here:

你错过的可以总结如下:

  • How to perform market surveys
  • 如何进行市场调查
  • How to advertise
  • 如何打广告
  • How to get investments
  • 如何获得投资

Upon hindsight, above is just some bullshit being taught in overrated management schools. The ultimate questions you need to answer is:

你需要回答的最终问题是:

  • Will they want it
  • Can I build it
  • 他们需要这吗
  • 我可以建立起来吗

Being a senior dev, you are more comfortable answering the 2nd question. Answering the first question takes up the real grind that doesn’t necessarily require going to school.

作为一个高级开发,你会非常轻松回答这两问题。

An oversimplified approach is summed up here, but it has been tried by thousands of successful entrepreneurs.

这里总结一个非常简单的方法,但成千上万个成功的企业家都尝试过这种方法:

And you don’t need an entrepreneur tag in your linkedIn profile to attempt it, by the way.

你不需要在你的Linkedin个人资料里有个企业家标签来尝试他。

It requires building it first, trying to sell it to some 10 people, iterating over it to sell it to yet more 10 people, then showing it to:

他需要首先构建,尝试卖给10个人,迭代卖给更多十个人,然后显示给:

  • People with big pockets i.e. investors, and / or
  • 有钱人
  • People with huge audiences i.e. media.
  • 有影响力的媒体人

And since you have 20 already trusting people, it’s not as hard as it seems.

既然你有20个信任的人了,那就不难了。

That’s how you, a senior dev sulking for that 12% raise, can get over it, forever.

这就是作为一个只涨薪12%而闷闷不乐的高级开发,永远客服他的方法。

** UPDATE ***

更新

Being a doomsayer sounds painful (uncool? meh…) to both the doomsayer and the audience. From some readers’ responses about the article being biased, I felt compelled to supplement the forecasts with some data, especially seeing huge viewership it got in one day after publication.

My primary input for the article was some competent software industry colleagues whom I observed progressing through their careers. The input was also myself who has worked with many different shops (which incidentally employ highest number of software devs against core product firms) as employee as well as freelance, and big product companies too.

I am not a guy who relies too much on surveys, but in the absence of stories that can be commonly connected to, observations can be easily perceived as ‘biased’ — and I do observe it here. So here goes something:


But again, those are opinions from ivory towers or surveys —and I don’t give a damn. But alas, reddit also concurs — burnout resulting into ageism fulfilling the prophecy of bias against senior devs.

Conclusion:

The happier lot is lucky. I was also one of them. That changed. The change was painful, but it taught me many things, including some super-useful technical skills.

Today I don’t feel happy being a doomsayer, but there is nothing to feel sad about it either. Those are market forces, which, in the long run are being driven by technology. It’s just difficult to see it happen.

Unlike Start Debug or Double click action.

做一个预言家听起来很痛苦(不酷?我…)对预言家和观众。从一些读者对这篇文章有偏见的反应来看,我觉得有必要用一些数据来补充预测,尤其是看到它在出版后的一天获得了巨大的读者群。

我对这篇文章的主要投入是一些有能力的软件行业同事,我观察到他们在职业生涯中取得了进步。我也曾在许多不同的商店工作过(顺便说一下,这些商店针对核心产品公司雇佣了数量最多的软件开发人员),同时也是员工、自由职业者和大型产品公司。

我不是一个过分依赖调查的人,但在缺乏可普遍联系的故事的情况下,观察结果很容易被认为是“有偏见的”-,我确实在这里观察到了。下面是一些内容:

软件拥有最高的工作营业额(https://www.technrepublic.com/article/software-had-the-highest-job-turnover-rate-of-any-industry-in-2017/)—原因是薪酬或对管理层的不满。更不用说,这些职业跳槽者最终会进入管理层,不再是一个永远的开发者。骄傲结束。

-如果不跳槽,他们就会成为远程自由职业者。这并非如此[当今的新时尚](https://hacker noon.com/best-tech-company-to-work-for-in-2019-is-as-always-illustrive-a1b88b87446c),它们[只是在增长](https://freelancinghacks.com/20令人惊异的自由职业统计-远程工作未来/)。远程自由职业者大多不是别人,而是高级开发人员*。

-[当明星开发者的目标与管理层的目标不重叠时,他们是多么的不好》(https://medium.com/@billjordan1/the-quiet-crisis-unfolding-in-software-development-cffbdaffb450)-软件开发总监的一篇带有4.2k拍手的中型文章。

-[软件工程是一个死胡同,35岁时就业率下降了](http://www.bloomberg.com/news/2012-04-22/software engineers will work one day for english majors.html)-bloomberg说。不幸的是,今天这篇文章是付费的,但我看到一些有趣的数字在[关于这篇文章的YCombinator论坛帖子](https://news.ycombinator.com/item)上谈论独立性。ID=3878522)。

但同样,这些都是来自象牙塔或调查的意见——我一点也不在乎。但是,遗憾的是,【Reddit也同意】(https://www.reddit.com/r/programming/comments/5m8amp/the_developer_burnout/的_reality_),-burnout导致年龄歧视,实现了对高级开发人员的偏见预言。

结论:

幸福的人是幸运的。我也是其中之一。改变了。变化是痛苦的,但它教会了我很多东西,包括一些非常有用的技术技能。

今天作为一个预言家,我不感到高兴,但也没有什么可悲的。这些都是市场力量,从长远来看,它们是由技术驱动的。很难看到它的发生。