Irrational Exuberance //www.klytx.com/ 2021 - 01 - 31 - t16:02:06z 金沙手机网 lethain@gmail.com 如何成为一个技术影响者。 2021-01-30T05:00:00-07:00 标签:www.klytx.com, 2021 - 0130:/tech-influencer/

在假期前的一对一访谈中,一位同事表示有兴趣在公司外发挥更大的影响力,并希望得到我的建议。我半定期收到一封类似的电子邮件,询问那些希望提升职业生涯的人是否应该开始写博客、写本书或诸如此类的事情。

尽管很少有人通过内容创作对行业产生有意义的影响,但绝大多数人通过内容创作来推动自己的职业生涯。创建少量有意义的作品,为每一个作品制定一个发行计划,一直这样做,直到一个作品幸运地获得发行权,然后停止;这就是你需要做的所有事情,以便求职和招聘变得更容易一些。

如果你的目标比这更进一步,那么我有一些建议。

什么是技术影响者?是的,我不太确定。我想很多人会用这个词来形容一个谈论科技的知名人士,这似乎是一个合理的定义。在这种情况下,我认为它是一个试图改变行业惯例或思考某一特定主题的人。例如,Tanya Reilly on雇佣和柠檬市场

大多数成功人士在网上并不知名。如果你经常参与社交媒体,很容易被它所创造的现实扭曲领域所吸引。当你花很多时间在一个在线社区的时候,在这个社区里出名就相当于你的职业信誉。我的经验是,我认识的最成功的人中,很少有人是在网上出名的,而我认识的许多最成功的人根本不在网上创建内容。也许他们有一个Instagram账户,但它关注的是他们的家庭和非职业兴趣。

此外,与我共事过的大多数成功人士都不会在网上写作。他们还没写书。他们不在会议上发言。他们没有YouTube频道。它们不会在抽搐时流淌。如果你进入了一个高度在线的社区,你会沉浸在这样一个信息中:你需要在线创建内容才能成功,但事实并非如此。你绝对不必做这种事。

我相信,把你的精力引导到长期的、半私人的社区(学习圈、聚会、,等)而不是公开。

在网上出名可能是不好的。对于我认识的每一个通过在网上出名而改善了职业前景的人,我知道有几个人经历过骚扰或损害了他们的职业前景。可见度出错的地方比正确的地方多。互联网是一个非常公共的空间。

大多数成功人士都在某种程度上享有声望。对于那些没有从知名大学毕业的人,我相信//www.klytx.com/foury-year-career/“>制造业声望是成功职业生涯的重要工具。威望是万能的润滑剂。它使你成为一个更有吸引力的候选人。它帮助你建立起一个愿意并且有能力帮助你的人际网络。它为许多公司的高级职位打开了大门。你可以用更少的声望来完成所有这些事情,但用更多的声望总是更容易的。

内容创作是创造声望的有效方法。打造威望最有效的策略是在几家知名公司工作,但与加入FAANG公司相比,许多人更容易在网上创建内容。你可以从我开始写作的肯塔基州丹维尔创作内容,也可以从我教英语时写作的地方创作内容。

很难衡量影响力。如果你有一个关于影响力的具体目标,那么你很有可能实现你的目标,只要你坚持十年或二十年。如果你没有一个明确的目标,那么你会不断地努力,花很多时间为自己缺乏进步而感到难过。

页面浏览量是衡量影响力的常用标准,但这是一个相当糟糕的标准。有争议远比有影响力容易得多,虽然它们是相关概念,但却截然不同。页面浏览量也会激励选择大量受众(“早期职业软件工程师”)而不是有影响力的受众(“技术主管”)。

社交媒体追随者是一个很好的衡量影响力的指标。范围是分布的一部分,而分布是影响的一个重要部分,因此这可能是一个有用的影响力衡量指标,但同样面临着困扰页面浏览量的挑战。大多数有影响力的人很早就花了一些时间来直接培养他们的追随者,但这似乎是一个特殊点r phase of influence, not something that folks continue to focus on, and many folks develop their audiences in ways that are distinct from how they later hope to be influential.

Book or dollar sales are also tempting for folks since they’re easily quantifiable, but they’re not a particularly effective measure of influence from my perspective. Who reads the book and whether the book changes their behavior matters much more, and is very hard to measure.

Volume of writing is also tempting, but anyone can write a lot without that writing have much impact. There are a lot of LiveJournals out there to testify to that fact. Conversely, I think a lot about Being Glue as an important post, and its impact stands on its own without an ocean of related posts written around it.

Inbound conversations is a measure that I find useful. How many folks reach out for advice or perspective from you? To some extent, this could also mean your writing is confusing, but my general experience is that folks give up on reading confusing things and only reach out about things they’re moved by (or strongly disagree with, circling back to the previous point on controversy).

Conference or podcast invitations from folks seeking you to participate in their event probably is a useful measure of influence, as folks running podcasts get good at identifying guests who will engage their audience. There is a broader category of similar requests: book proposals, angel investing, mentorship requests, etc.

Personally, I set goals around my writing habit, which is the thing that I want to focus my energy towards. For example, in 2018, I set a goal to publish one post every month, which was helpful “influence funnel metric” for me. I don’t think this invalidates my advice that you should know how you’re measuring this, even if the best you can do is to acknowledge that you’re not really sure what you’re trying to accomplish–that’s useful to say out loud.

A little goes a long way. I write a lot because I write to process ideas and free up space in my head. I don’t write a lot because it’s an effective way to be influential. I don’t even necessarily think writing a lot is a good way to become a better writer–I play at writing rather than practicing it. If your goal is to be influential online, don’t pattern match on a prolific content creator.

If you want to reap the benefits of influence, you don’t need to create a lot of content. Just create a few great things. You could start a Substack and end up writing a weekly post for years and never accomplish the impact of one great piece. For one example, consider Patrick McKenzie’s Salary Negotiation piece. I suspect vastly more folks can name that one piece from Patrick than can name two pieces from Patrick, but that one piece alone has influenced the industry in an important way. I’ve written hundreds of posts, but only flagged about twenty of them as influential (for a somewhat generous definition of influential–really it just means I like the piece), and by a stricter definition maybe only Migrations, A forty-year career, Sizing engineering teams, and Productivity in the age of hypergrowth–roughly a 1:150 ratio of posts to influential posts.

Honestly, I still can’t guess which posts will be influential, but I can guess which posts have no chance of being influential, and I think most authors can self-edit to that extent as well. If your goal is to be influential, then distinguish between writing for practice and writing for influence, and don’t mix the two.

Experiment across mediums. There are a lot of opinions about what kind of medium folks should work in. Is writing better than speaking? What about keynoting at a big conference? Should I do a Substack or a blog? A self-hosted blog or Medium? What about streaming on Twitch? Speaking at conferences or creating YouTube videos of the same content? Should I write a book?

My advice is to find ways to experiment with all the mediums and figure out what you enjoy. Spend enough time at each to develop your skills somewhat. It’s valuable to you to have a few longer clips of you speaking online. It’s valuable to have a few pieces of your writing in a published book or magazine.

There are diminishing gains to having many published pieces or many talks online unless you have directly related professional goals (e.g., to support yourself financially from public speaking or publishing your writing). Unless it’s something you love doing, look at it as a self-development challenge, and then move on to something else afterward.

Distribution matters at least as much as content quality. Even if you create something amazing, it won’t be influential if folks don’t engage with it. The first part of engaging with something is discovering it, and distribution is a huge part of that. A coworker once told me, “Books are sold rather than bought.” That line of reasoning applies to most writing online.

Develop a distribution plan for your best content. If you want something you’ve written to be influential, you should develop a clear distribution plan for it. Even with a distribution plan, what you’ve written may not get much traction, but without one it’s quite unlikely. The simplest effective distribution plan is coordinating with a few more visible friends to share your article. If you get ten people to commit to sharing your article around the same time, that’s honestly a good enough distribution plan for a snappy piece of content.

There’s an entire distribution ecosystem. If you create and distribute enough content, you’ll start to find there’s a fairly complex ecosystem of content distribution. There are secret chat rooms where social news voting rings promote content onto Reddit or Hackernews. There are weekly “best links” mailing lists that distribute new content. As a primary content creator, as opposed to these various forms of secondary content creation (e.g. “best links” lists), your interests are well-aligned with the ecosystem, and you can mostly ignore it.

In that case, occasionally something good and unexpected will happen, but mostly it won’t. If you invest a lot of energy into that ecosystem, you’ll end up spending most of your time on the distribution of other folks content, which is somewhat adjacent to your original goal of influencing your industry.

Building distribution requires quantity and consistency. Nurturing most distribution channels requires generating an ongoing volume of work. Mailing lists, RSS feeds, social media—these all depend on consistent creating appealing content or being a noteworthy individual in some regard. You can’t create major distribution with infrequent, one-off content, which is why many folks end up thinking they need to focus on distribution in order to become influential.

Distribution is always a problem, but it’s never the only problem. A lot of folks get fixated on distribution as the sole explanation for why their work isn’t having the sort of impact they believe it should. You may need to edit your piece more. It might be boring. A lot of stuff that you write has been said before, and might not land effectively. Thought leadership is cyclical, with various viewpoints become popular and unpopular before switching a few years later, and your piece may be out of sync with current thinking.

Corollary: content is always a problem, but it’s never the only problem. People often get caught up on the idea that everything’s already been said. I’ve even chatted with some folks who were upset that someone else wrote a very similar post to one of their own. If you write something very similar to another recent post, you will likely get less traction, but that’s it. You will find some folks who get upset about stuff like this, but I think it’s fairly unrealistic and self-important to assume folks should check if others have written on a topic before writing on it.

If you learned from a specific post on a topic, you should, of course, acknowledge it.

You can borrow distribution. If your goal is to be infrequently influential, then you don’t really need to bother developing your own distribution channels. Instead, just find folks who like you and ride on their distribution channels. Write a post on their blog, publish to their mailing list, speak at their conference, contribute to their book, or whatever. Prolific creators generally aren’t willing to let you publish a lot of content through their distribution (feels like getting taken advantage of), but they’re usually glad to help an irregular creator get visibility if they write something high-quality (solidifies them as a discoverer of a quality creator).

The more content that you have to deliver, the less you’ll be able to borrow distribution to deliver it. Fortunately, this works out pretty well: if you have enough content then you can develop your own distribution. If you don’t have enough content, you can borrow someone else’s.

My last piece of advice is: don’t assume everyone’s playing the same game. One way that folks get into trouble in creating content is that they assume everyone is playing the game that they are playing and ought to be playing by their rules. In practice, folks are playing many different games when they create and distribute content online, and the rules and values conflict. Many folks are focused on creating visibility for themselves, and assume others are doing the same. Many other folks are heavily financially motivated, trying to make a living by selling their content. Others make their living distributing others’ content, occasionally for direct compensation but usually for indirect compensation (e.g., podcast hosts and guests: a small percentage of guests do get paid for a small percentage of podcasts, but most podcasts don’t pay any guests and even for podcasts that do pay guests, most guests are not paid).

Be mindful of your values, and the values of others!

金沙手机网 lethain@gmail.com
How to present to executives. 2021-01-02T05:00:00-07:00 标签:www.klytx.com, 2021 - 0102:/present-to-executives/

你有没有向公司高管介绍过一个关键的工程计划,兴奋地走进房间,失败地离开?也许在无关的问题扰乱讨论之前,你才进入第二张幻灯片。也许你整个演讲都是为了让大家说“干得好”,然后离开,没有任何有用的辩论。后来,你不太清楚发生了什么,但你知道事情进展不顺利。

在你职业生涯的早期,你可能不会经常与公司高管交流。当然,如果这是一个足够小的公司,你可能会,但这不是正常的。然而,随着你职业生涯的深入,你的影响力将越来越受到你有效影响高管的能力的制约。而

  • Complication: why is the current situation problematic? Example: We plan to double our engineering team again this year, but based on last year's experience, we think that will decrease velocity further while significantly increasing our organizational budget.
  • Question: what is the core question to address? Example: Should we keep moving forward with our plan to double engineering this year?
  • Answer: what is your best answer to the posed question? Example: We should stop hiring for the next six months and focus on gelling our existing team. Based on progress at that point, we should refresh our hiring plan for the remainder of the year.
  • In many discussions, a well-structured opening paragraph is enough to spark an important conversation. Although in those cases, you might not discuss the rest of your document, the process of writing the document is still an important step in refining your thinking.

    Relatively few folks employ a formal structure for the entirety of their document, but there is at least one popular format that some folks find valuable: Minto's Pyramid Principle from the aforementioned book. Start by brainstorming your proposal into a series of arguments that support your answer. Once you've written them all down, group them into related arguments. Shape those groups into three top-level arguments, with up to three sub-arguments supporting each of those top-level arguments. Recursively apply this approach, ensuring each argument summarizes its at-most-three sub-arguments. Order the arguments within each group by descending importance. At that point, you're done.

    Although I personally found SCQA immediately useful, I'll admit that when I first tried to follow the Pyramid Principle, it gave me the same emotional response as staring at Brutalist architecture. It's grown on me with practice, but I'd still recommend most folks start by adopting SCQA as a core practice and only adopt the entirety of the Pyramid Principle if you get feedback that your presentations are hard to follow.

    After you've written your structured document, gather feedback on it from your peers and stakeholders. Aligning with stakeholders before your presentation, sometimes called nemawashi, is extremely effective at reducing surprises. Some of your peers should have experience presenting to the executives and will have useful feedback on improvements.

    For the presentation itself, set a clear agenda, but don't focus on rote conformance. A great meeting with executive leadership is defined by engaged discussion, not addressing every topic on the agenda. Some will consider this a controversial position, preferring to measure every meeting by its action items, but this ignores the often more valuable relationship establishment and development aspects of these meetings.

    Mistakes to avoid

    Even if you do a great job preparing for your execution presentation, these things sometimes go wrong. There's nothing you can do that will avoid every bad path, but you can avoid most of the anti-patterns that routinely sink these meetings.

    Never fight feedback. It's very common for an executive to have a critical piece of feedback but to not quite have the right framing to communicate it within the moment. You want them to deliver the feedback anyway, not hold it back and probably forget to give it later. If you show up as resistant to feedback, then they'll start swallowing their comments, and you'll get relatively little out of the meeting. Focus on gathering feedback; don't worry about whether you agree with it until you have more time afterward. If there's a decision that needs to be made that you disagree with, then you should inject one or two pieces of relevant data that might change their mind, but afterward, let it go. You'll be more effective by reflecting on the feedback and changing their mind later than continuing to push back within the meeting.

    Don't evade responsibility or problems. Many folks try to hide issues from their leadership, and this always goes poorly. Successful folks look at informing executives as absolution: once it's on the table, you can move towards solving it rather than hiding it. This is particularly true if an executive sniffs out a problem during a meeting. Lean into the feedback, don't evade it. You will create more credibility by agreeing with their perspective and following up with more data later. You will harm your credibility by arguing with them about it.

    Don't present a question without an answer. A frequent piece of advice given to new leaders is to "never bring your manager a problem without a solution." That's not generally great advice, but if you present a problem to an executive without a proposed answer, then in the back of their mind, they're wondering if they need to hire a more senior leader to supplement or replace you. You can't create alignment in the room unless you have a proposal for folks to align behind.

    Avoid academic-style presentations. The way you're taught to present about topics in school is more-or-less the entirely wrong approach for presenting to executives. The Minto Pyramid Principle will steer you in the right direction if you follow its scripture.

    Don't fixate on your preferred outcome. It's very common for folks to get so caught up on the outcome that they want that they spend their energy resisting the clear, unavoidable signs that it isn't going to happen that way. It's very easy to get frustrated about the "wrong" decision getting made, but it's helpful to keep in mind that there is a great deal of context that you're missing. There is no such thing as a permanent decision: almost every decision will be reconsidered multiple times over the next two years.

    Presenting to executives can be intimidating, and this might be more advice than helpful. If you want to boil it all down to one concise tip: send an early draft to an executive attending the meeting and ask them what to change. If you listen to and apply that feedback, you'll figure out the other pieces as you go.

    金沙手机网 lethain@gmail.com
    Early Edition of "Staff Engineer" coming Jan 31st. 2021-01-01T05:00:00-07:00 标签:www.klytx.com, 2021 - 0101:/staff-eng-early-edition/

    预订员工工程师:超越管理轨道的领导力Gumroad1月31日,以及亚马逊2月28日发布。


    2020年大部分时间,我在数字早期版可在Gumroad预订,于2021年1月31日交付。您还可以预订请使用此表格提交修复。当然,任何购买早期版本的人也会得到最终的数字版本。

    我对书籍格式的希望与整个项目背后的目标是一样的:为那些在个人贡献者轨道上追求并担任高级角色的人提供更好的rails,我把这些角色称为Staff plus。我很自豪它是如何走到一起的,我很感谢许多人谁贡献了他们的故事和努力的项目。如果它对人们有用,并且在某种程度上推动了行业向前发展,无论是我们如何看待这些角色,还是我们如何创造获得这些角色的机会,那么在我看来,它将是一个巨大的成功。

    员工工程师是一本自行出版的书。我对这个决定感到非常兴奋,因为它让我能够创作出我梦寐以求的那本奇怪的小书,尽管我肯定错过了与Stripe Press的天才团队合作的许多优势,他们共同创作了优雅的拼图。该项目的所有利润将捐赠给非营利组织,这些组织致力于增加代表性不足的社区获得技术的机会。

    如果您有更多问题,请查看

    In practice, these roles usually work out a bit differently. Your team is usually too small to focus exclusively on managing people and execution. Typically you're the senior-most member of the team, which requires that you stay heavily in the technical details. You're also expected to make direct technical contributions, which mean you need to structure your time to have extended blocks of uninterrupted time. It's hard to balance these constraints, and it's even harder to balance them without falling prey to the most common failure mode of new managers: micromangement. (If you've ever gotten the advice that "managers shouldn't code," rest assured that advice isn't really about whether mangers should actually code, it's just a clunky preventative for micromanagement in new managers and an equally clunky preventative for senior managers who've forgotten how to listen to others.)

    The reality is that when you're trying to learn something brand new, like team management in this case, you're almost always going to be better off getting to focus on that area. In a team management role, you'll be encouraged to lean on your team for technical leadership rather than fulfilling both roles. Folks attempting to fulfill both often retreat towards work they find familiar, which typically results in tech lead managers who forget to perform the management part.

    Another problem with the split focus is that the tech lead manager role is a bit of a dead end. Down the managerial path, the evolutionary step is towards group management. Down the technical path, the evolutionary step is towards staff engineer. Splitting your time across both functions isn't ideal for pursuing either path, and unfortunately it's the rare role and organization that supports ongoing growth for folks in tech lead manager roles. They do exist, but they tend to be a bit specialized, for example working on infrastructure efficiency, performance engineering, or applied machine learning.

    Tech lead manager roles are not always a bad choice. If you've built up your experience as both team manager and technical contributor, then sure give it a whirl if it's what checks the most career boxes for you, but I do consistently recommend against folks starting their management career in such a role.

    金沙手机网 lethain@gmail.com
    Interesting work happens at the edges. 2020-12-17T05:00:00-07:00 tag:www.klytx.com,2020-12-17:/interesting-work-happens-at-the-edges/

    Many engineering managers become obsessed with the transition to managing managers rather than managing a team directly. I’ve seen that pursuit of managerial scope become almost an obsession for some folks. That’s a shame, because group management is a very different job than team management, and is often both less rewarding and less likely to facilitate ongoing learning. In particular, I often get email from folks considering joining a hypergrowth company in pursuit of their first group management role, and my advice is, in its most concise form: Do it if you must, but be cautious.

    There are only three paths to group management roles: getting hired at another company that has a group manager role, replacing an existing group manager within your company, or working at a growing company that frequently creates new teams. Companies hiring externally want to “hire in experience” and rarely hire folks without prior group management experience into group manager roles. Replacing an existing group manager within your company is a real option, but the timing is uncertain: it depends on an existing group manager leaving. This process of elimination leads many folks to pursue third path: joining a fast-growing company whose growth creates an ongoing demand for new group managers.

    When I was considering what to do next after working at SocialCode, the company that acquired Digg, I was frustrated that I couldn’t get interviews for group manager roles. I was fixated on the pursuit of managerial scope, and that ultimately became my deciding factor in joining Uber. The organizational pyramid scheme of hypergrowth is hard to resist. Six months later, I was managing a team of teams–goal accomplished. It took me a while longer to realize that I didn’t care for much of the work.

    Fast growing companies generate a huge amount of change, and the primary function of group managers in those organizations is to absorb change effectively. However, they often lack much control over that change, and end up with the underwhelming choices of pushing the chaos to their team or personally absorbing it. The former violates the manager’s pact–you’re there to help–and the later is a reliable path to burnout.

    Learning to manage change effectively is an essential management skill, and you can learn a great deal navigating a chaotic organization, but you can only usefully learn the same lesson so many times. Because the other group managers around you are similarly consumed by change management, the role often settles into an odd mix of contentious, exhausting, and boring.

    That doesn’t mean you should never take these roles, there are many exceptions. If your leadership is adept at change management, you’ll find working in their organization to be a rare combination of sustained growth and impact. Similarly, there are periods in your career where the financial and prestige advantages of these roles may be a worthwhile exchange for being grist.

    One related observation is that there are many interesting long-term jobs at hypergrowth companies, just not in group management. The most interesting work at hypergrowth companies always happens at the edges. If you have the opportunity to be a senior leader at such a company, then you’ll be stretched in remarkable ways. The second most interesting management jobs are as a team manager. As a team manager, you’ll be directly involved in solving a critical, rapidly changing business or technical problem–as the constraint evolve, you can keep learning indefinitely. If striving for perceived career growth is preventing you from considering team manager roles, you’re doing yourself a disservice.

    金沙手机网 lethain@gmail.com
    2020 in review. 2020-12-10T05:00:00-07:00 标签:www.klytx.com,2020-12-10:/2020年回顾中/

    以前:2019年回顾,我没有为这一年设定目标,而是为这十年设定目标,考虑到我预期的2020年和发生的2020年是完全不同的动物,对此我特别感激。

    我在2020年取得进展的目标:

    一些我没有取得太大进展的目标:

    I also worked on a bunch of stuff not tied to these goals, which I'm happy about. These are rough goal posts, not a treasure map to somewhere special. I'm not planning to revise these goals for this year, but I suspect I'll spend more time in late 2021 revising them a bit.

    Calm

    We are, of course, hiring!

    I joined Calm in January of this year as their CTO. In my professional career, I've never experienced a year like this one where it felt like each week brought a new national or global crisis, and weathering that has been hard, but you also learn a lot from weathering something like this together with a team.

    It's a rare privilege to work with this engineering team, and you can get some sense of the work by reading the blog posts at eng.calm.com, and also the section on Working in Calm Engineering. It's also been a learning year for me in my first executive role, and I've learned a lot from Calm's leadership team, and am proud to be a member. I'm sure I'll write more about that at some point.

    Our app has evolved quite a bit this year as well, and I'm even more excited for the work we have on deck for 2021. Similarly on the business side, there were several discrete events that were pretty special, including our partnership with Kaiser Permanente, our partnership with American Express, and of course, Harry Styles.

    An Elegant Puzzle

    An Elegant Puzzle was published on May, 28th, 2019. I shared some sales numbers October at the 5 month mark, and have updated those numbers through November, 2020. In addition to breaking 30,000 total copies sold, it sold just above 1,000 copies last month, which is pretty exciting since we haven't done much to promote it this year.

    FormatOct, 2019Nov, 2020
    Print-15,579
    Audible-4,483
    Ebook-10,640
    total12,78030,702

    I don't have the exact ebook versus audible versus print numbers from October, 2019, but the ratios were 60% print, 10% audible, 30% kindle, if you want to do a rough estimate.

    This wasn't a financially motivated project–almost all advice I've ever heard about writing technical books cautions against that goal–and I haven't earned out of my advance, but I'm getting pretty close. If you want to write a book as a financially motivated project, self-publish like @swyx and @GergelyOrosz have, or write Designing Data-Intensive Applications.

    StaffEng

    Weekly pageviews for Irrational Exuberance.

    My largest project for 2020, likely be my largest project for 2021 as well, has been StaffEng: a collection of stories of folks' experiences of reaching Staff-plus roles, and a series of guides synthesizing their experiences into advice. As of today, it has ~16 stories and ~30 guides. You can see the gritty details on Github at lethain/staff-eng.

    Some of the popular pieces so far are Work on what matters, Staff engineer archetypes, Michelle Bu's interview, and Keavy McMinn's interview.

    Starting with this first tweet, it's gotten pretty good traction, having 237k pageviews since March. Considering the site and content are all new, I'm pretty happy with that progress. It's also an experiment in whether a more focused site can get content to rank for relevant search terms on Google. So far, not much success with that SEO angle, but the content has worked well on social media and news aggregators. The mailing list has grown from 0 to 3,421 subscribers, which is larger than my blog's despite being shorter lived.

    My tactical goal is to publish it into a book by mid 2021, but my hope is to influence how the industry views these roles–to some extent anyway. More about the book aspects of the project over the next month or two, still a few important decisions to make around publishing.

    Irrational Exuberance

    Daily pageviews for Irrational Exuberance.

    As of 2020/12/6, I've written 78 posts, so I assume I'll finish around 80 before the clock strikes midnight on January first. That's up about a dozen from 2019, when I wrote 65, and about the same as what I wrote in 2018 (75). I don't set writing volume goals, so I'm neither particularly proud nor distressed by this volume.

    My self-selected "most impactful posts" of the year: Your first 90 days as CTO or VP Engineering, How the Digg team was acquihired, Work on what matters, Managing technical quality in a codebase, and Write five, then synthesize: good engineering strategy is boring.

    Pageviews for the year were 592k (+209k from 383k in 2019; +382k from 210k in 2018). Five of the seven most trafficked pieces were written in 2020, one in 2019, and one in 2011. Those top pieces were: Introduction to architecting systems for scale (2011, 82k views), First ninety days as CTO or VP Engineering (2020, 37k views), Build vs Buy (2020, 19k views), Digg acquihire (2020, 14k views), Managing technical quality in a codebase (2020, 13k views), A forty year career (2019, k views), Staff-plus engineer resources (2020, 8k views), An Elegant Puzzle (2019, 7k views), Python GraphQL Tutorial (2019, 7k views), and War Card Game in Python (2014, k views).

    My blog's weekly newsletter grew from 1,318 subscribers to 3.061 (+1,743 YoY). It's not really a newsletter in the spirit of a Substack, just a weekly collection of recent posts, but it's worked well for me thus far. It has also changed my posting strategy a bit, scheduling better posts to land in the newsletter's first slot.


    On a totally different aspect of the blog, my blog is still on Kubernetes, which I realize is a self-parody, but it's been helpful for keeping me current with GCP and Kubernetes itself. A few years ago when I rolled this out, I had to build my own continuous integration scripts, but I was able to deprecate them this December with about an hour of work. GKE supports that workflow natively now, which is an awesome improvement. Equally excitingly, Google's load balancer can manage SSL certificates for you (which AWS ALB has had for some years), which will allow me to deprecate my somewhat convoluted LetsEncrypt setup and Nginx pods. I haven't actually done that yet though because the zero-downtime migration path is a little bit messier than I've felt like handling.

    Community building

    I've done a couple of small community building things this year, which have both been great learning experiences. In January, I put together CTO, VP Eng and Staff-plus Engineer learning circles, and while most didn't get far, the one that I personally stayed involved in is going great, and has introduced me to a group of folks who have taught me a lot already. Unfortunately I can't coordinate additional groups and my group is currently full, but my experience is that this is an underserved area and you can likely run one yourself!

    The other community building project is the techwriters discord, which is a more recent effort. It's still too early to know whether this is going to fade into inactivity or turn into something durable, but again it's a place where I've already learned quite a bit from folks. If you're interested, please come join us.

    Social Distribution

    In addition to the previously mentioned numbers, a few notes on social media distribution. Twitter followers grew from 8k to 11.6k (+3.6k YoY), generally adding 200 to 400 a month, with a spike in January around Your first 90 days as a CTO or VP Engineering and slightly upshifted since October around StaffEng content. LinkedIn connections grew from 8.9k to 10.5k (+1.6k YoY), although I relied on it less as a distribution vehicle than I did in 2019.

    Speaking

    I did a good amount of speaking in 2019, both to support An Elegant Puzzle's launch and to create visibility into the work we were doing in Stripe's Foundation organization. This was a great learning opportunity for me, and one of the things I learned was that I'd generally rather write than speak.

    With that in mind, I prioritized writing in 2020, but I did do some speaking and podcasts in 2020, both in support of Calm's engineering organization and StaffEng. I'll be honest that I didn't miss speaking, and I suspect that 2019 will be my career's volume high-point for speaking, although I do have a goal to continue speaking at a reduced rate.


    That's a wrap. I hope y'all have found bright spots in what has by-and-large been a horrific year. If you do write about your year, I'd love to read it!

    金沙手机网 lethain@gmail.com
    弱和强团队概念. 2020 - 12 - 05 - t05:00:00 07:00 tag:www.klytx.com,2020-12-05:/weak-and-strong-team-concepts/

    工程师们常常感到沮丧,因为他们的管理层“当我们是独一无二的人时,就把我们当作可替代的资源”。另一方面,工程师们通常把个人所有权视为管理上的失败,“关键系统需要由团队而不是个人拥有。”在某种程度上,这些似乎是相互矛盾的信念,他们不是,思考如何两者都是真的,这让我们想到了一个我最近一直在反思的想法:弱的团队概念和强的团队概念。

    这里的“弱”并不意味着贬低,也不意味着“强”一定是好的同义词,相反,它是在粒子物理学中弱力和强力的精神。我第一次提到这个想法是在Tanya Reilly呼叫当我能够帮助设定一个领域的技术愿景并让人们朝着这个愿景前进时,我感觉最有影响力。我想我们都会同意,我们希望我们的代码的架构比现在更好,或者在某种程度上得到改进。然而,我发现人们往往有一些模糊的感觉,想要更好,却不清楚自己想要的是什么。我喜欢帮助大家共同理解他们想要达到的目标(如果我们永远也达不到目标,那就没关系了),并提出一个如何达到目标的总体计划。-Joy Ebertz

    Lorax在他广受欢迎的儿童读物中代表着树木,员工工程师代表着他们公司的技术。技术不能为自己说话,需要有效的倡导者。那些成功地推动技术进步的人是务实的、深思熟虑的,他们更关注进步的长期趋势,而不是把每一个单独的决定看作是成败的危机。将其视为技术方面的兼职产品经理可能会有所帮助。

    一些员工和工程师被明确雇佣来领导某个特定领域,如it’s hard to prioritize new businesses, even though the valuable business’ growth rate is trailing downwards.

    In the long-term, companies either learn to explore or they fade away; this isn’t an ignorable challenge. Simply assigning a team that’s mastered hill-climbing to do exploratory work is far from a sure thing, so many companies take a different approach. They find a couple trusted individuals with broad skills, allocate some resources, and check back in a few months later to see what they’ve discovered. One of those engineers is often a Staff engineer.

    This isn’t always a business problem either, it can be any sort of ambiguous, important problem that the company’s systems are ill-shaped to address. It might be reducing your infrastructure costs by an order of magnitude. It might be identifying a multi-region strategy that takes six months instead of three years. It might be addressing the sudden realization that your primary database only has three months of remaining diskspace and you can’t upgrade to a larger size (in my experience, a surprisingly frequent problem at fast-growing startups).

    This is some of the most rewarding, and the riskiest, work companies do, and it takes a great deal of organizational trust to be trusted with this work, including having the respect from the business that if you fail it’s a reflection on the problem and not you.

    Being Glue

    Tanya Reilly wrote a wonderful post, Being Glue, which captures another core element of successful Staff engineers: doing the needful to identify the right work and get it shipped. It’s not glamorous, but high impact organizations often have one or more Staff engineer working behind the scenes expediting the most important work and ensuring it gets finished.

    But will you still write software?

    It’s impolite to end any discussion of the Staff engineer role without opining on the first question that Staff engineers ask when they congregate in a room together: “Do you still find time to write software?” The answer is, of course, it depends!

    Ras Kasa Williams said, “I still contributed code regularly—certainly less than the rest of the engineers on my team; but it was important that I sustained "hand to keyboard" work to ensure that my technical strategy (and other macro–level decision–making) was informed by the on–the–ground experiences of the rest of my team.”

    Katie Sylor-Miller said, “I’m a frontend architect, but by far the main thing I've been writing lately is SQL, because I'm doing a lot of data analysis. I’ve been looking at our performance metrics to figure out where the areas for improvement are, and what would be the most impactful issues to fix to improve performance and business metrics. I will write little bits of JS or PHP here and there, but it's mostly to help unblock teams or to run small performance-related experiments.”

    Silvia Botros said, “I don’t do coding for the business anymore. I think the last time I had to pull up my terminal it was to refactor my dot files. This is an intentional decision by my boss, the Chief Architect. He’ll check in with us every quarter to make sure we didn’t contribute any code that goes into production.”

    Joy Ebertz said, “The more senior you get, the less your job is about code. Sure, unlike a people manager, you still have a very technical slant and even through principal, you’ll likely be doing at least some coding. However, the higher you get, the more your job becomes about mentoring and growing the people around you (and more broadly), building your team through building your company’s public tech brand, noticing larger technical trends that can be improved upon or corrected, helping to set the tech vision for your team or the company and advocating for resourcing for tech debt projects.”

    Most write some, some write none, but none write as much as they used to earlier in their career. There will be the occasional week that is purely coding, but those won’t be the norm, and if they happen too often it’s usually a sign of working on something comfortable rather than important.

    Slow but rewarding

    One unifying theme across Staff-plus work is that the timeframes are simply longer. Early in your career it’s easy to get attached to software development’s quick feedback cycle–write, test, ship, repeat–and most of the work you’ll be doing at this level replaces that feedbdack loop with one that takes weeks, months and years.

    The impact and the personal growth lives in those longer timeframes, and while everyone I spoke with wished they’d occasionally get more time to code, none of them regretted their transition into their current roles.

    金沙手机网 lethain@gmail.com
    Managing Staff-plus engineers. 2020-11-27T05:00:00-07:00 tag:www.klytx.com,2020-11-27:/managing-staff-plus-engineers/

    在获得人员配备,一个要求是提供更多关于管理人员和工程师的内容。它不太符合这样的主题,即专注于员工工程师本身,而不是公司或经理,但这是一个有趣的话题,也是一个很有价值的附录。

    当然,并不是管理员工和员工的所有方面都是该级别独有的:有一些基本原则适用于管理任何角色的任何人,例如执行有效的1对1给予反馈。对于这类事情,请阅读Lara Hogan的明确地建立你的控制

  • 为他们创造思考的空间,而不脱离日常生活的现实the organization. Many folks in these roles are so motivated by impact and “doing the right thing for the business” that they’ll grind themselves down without external intervention. If you’re their manager, then “external intervention” means you. If you see them spending too much time firefighting and helping unblock urgent work, work with them to protect more time for deep thinking work as well. Conversely, if you see them only doing deep thinking work, they’re likely to lose context, and potentially the respect of their peers and the business, if they don’t adjust that mix.
  • Remind them they’re a role model. Much like they do for managers, engineers in an organization watch Staf-plus engineers to learn which behavior and actions are rewarded (and tolerated). This is a great responsibility, but also a huge opportunity for impact: by living positive values, they have the opportunity to create a positive organization around them.
  • Minimize manager overflow. In the quest for efficiency over effectiveness, many companies trap their managers in a staggering amount of coordination and bureaucracy. When you’re drowning, you’re going to look for help wherever you can, and in many cases that causes managers to offload management work to their Staff engineers. This is absolutely going to happen sometimes–your relationship with Staff-plus engineers you manage is a partnership–but try very hard to minimize the amount and ensure it’s a temporary overflow rather than a permanent one.
  • Give them unrefined problems. This is a senior role where you ought to give them a problem space that they narrow into a more specific problem and solution. They have better technical context than you do, and if you point them too precisely at what you think is the problem, you won’t benefit from their judgment. Picking precisely the right problem creates at least as much impact as finding precisely the right solution, and is only possible when you create space.
  • Cede space to their leadership. When you’re managing a Staff-plus engineer, find ways to move pieces of your ownership explicitly into their realm of responsibility. For example, how can you enable them to hold their team responsible for technical quality, rather than you doing it? This creates leverage for both of you, and a sense of ownership for the Staff-plus engineer.
  • Appreciate them. Great Staff-plus engineers operate fairly independently, so it can be easy to deprioritize them when the organization is on fire. Ignoring your most important people is the manager version of “snacking”–something that feels important but usually isn’t the right priority. So keep your 1:1s, and generally remember to show up for them especially if they aren’t the sort of person to demand it.
  • Build, and insist upon, alignment with the business. Some engineers succeed despite harboring a mentality that technical work is more important than the business requiring that work. This mentality is generally toxic, but it exceptionally toxic when held by a Staff-plus engineer. This is someone who is a role model for the wider organization, and stretching them beyond that perspective is essential for them to remain in a leadership role. Companies undermine and eventually eject leaders who are misaligned with the business.
  • Hold them responsible to the full role. While few folks reach Staff-plus roles with major technical weaknesses, it’s my lived experience is that many folks reach these roles hampered by significant leadership or behaviorial challenges. These folks get the title, but tend to linger in Staff purgatory where they’re expected to lead, but are kept away from most leadership opportunities. They’re viewed as too unreliable or “expensive to involve.” You’ve gotta give these folks feedback on their gaps and hold them accountable to the full role expectations. Don’t let them linger as quasi-leaders indefinitely. Maybe they initially got the role via title inflation so you decide to just cover for their gaps instead of fixing it–don’t do that, instead figure out a plan to support them while shifting that responsibility to them.
  • Give them access tothe room, but don’t treat it as a status symbol. Folks often get fixated on status symbols and one that’s particularly common for engineers to focus on is “being in the room.” Sometimes meetings are where the work happens, but most routine reporting meetings have too many people in them, and you can create a great deal of time and space for both you and the Staff-plus engineer you’re supporting by sharding attendance across various meetings rather than doubling up for all of them.
  • The transition from Senior to Staff-plus engineer is a major one that changes the sort of work being done whereas previous transitions often only change the work’s extent. Many folks struggle with that transition, and many managers aren’t sure how to help support the Staff-plus engineers they work with. Certainly this is an incomplete list of helpful things you can do to support them, but hopefully it’s a useful starting point.

    金沙手机网 lethain@gmail.com