網絡工程師需要哪些知識
I’ve been working as an engineer on the growth team at Airbnb for a couple of months now.
我已經在Airbnb的成長團隊擔任工程師幾個月了。
Since I’m in an environment full of passionate developers, I wanted to share some of the good engineering traits I’ve observed in the engineers around me. Specifically, the growth engineers.
由于我處在一個充滿熱情的開發人員的環境中,因此我想分享一些我在周圍的工程師中觀察到的良好工程特征。 具體來說,就是成長工程師。
成長團隊 (Growth team)
First, if you’re not familiar with what a growth team is, here is some background. Growth teams are data-driven groups that drive the growth of product at companies. They are composed of data scientists, designers, engineers, product managers, and marketers. A pretty eclectic selection of people.
首先,如果您不熟悉成長團隊,那么這里有一些背景知識。 成長團隊是數據驅動的小組,負責推動公司產品的增長。 它們由數據科學家,設計師,工程師,產品經理和營銷人員組成。 相當折衷的人選。
Growth teams run experiments. Experiments test new product experiences against old ones. The goal of experiments is to optimize metrics like activation, engagement, and conversion.
成長小組進行實驗。 實驗可以將新產品的體驗與舊產品進行對比。 實驗的目的是優化指標,如激活,參與度和轉化。
You can think of experiments like a game of hot and cold. You run an experiment, you move in a direction, and the data tells you if you’re hot or cold. You keep doing this until you reach the hot spot.
您可以將實驗想像成冷熱游戲。 您進行實驗,向某個方向移動,然后數據會告訴您是冷還是熱。 您一直這樣做直到到達熱點。
Traditionally, experiments are composed of a hypothesis, test, outcome, and learning.
傳統上,實驗由假設,檢驗,結果和學習組成。
Hypothesis: A product hypothesis is a statement based on a set of assumptions about a product. For example, the growth team at Medium might make the following hypothesis:
假設:產品假設是基于對產品的一組假設的陳述。 例如,Medium的成長團隊可能做出以下假設:
“If we automatically open the iOS Medium app every time a user goes to Medium on their mobile browser, we will drive more traffic to our iOS app.”
“如果每次用戶在其移動瀏覽器上進入Medium時,我們自動打開iOS Medium應用,我們將為我們的iOS應用帶來更多流量。”
Test: A test is a lightweight prototype of the feature or solution suggested in the product hypothesis. It is designed to validate the product hypothesis and its assumptions.
測試:測試是產品假設中建議的功能或解決方案的輕量級原型。 它旨在驗證產品假設及其假設。
Outcome: The outcome is the results of the test.
結果:結果是測試的結果。
Learning: The learning is the insight that growth teams gain from the data gathered from the experiment.
學習:學習是成長團隊從實驗中收集的數據中獲得的見解。
The main takeaway is that growth teams approach problems in a structured and scientific way. This mentality reflects the problem solving techniques that engineers use to come up with solutions.
主要的收獲是成長團隊以結構化和科學的方式解決問題。 這種心態反映了工程師用來提出解決方案的問題解決技術。
成長工程師 (Growth engineers)
Growth engineers use experimentation to move fast and build momentum. They are rigorous in their methodologies and there is a lot that can be learned from them.
成長工程師使用實驗來快速行動并建立動力。 他們的方法學很嚴格,可以從中學到很多東西。
成長工程師不怕錯 (Growth engineers are not afraid to be wrong)
Growth engineers embrace failure. If a product hypothesis is wrong, as long as there was learning, the growth team can come out net positive.
成長工程師擁抱失敗。 如果產品假說是錯誤的,只要有學習經驗,成長團隊就可以得出積極的結論。
Because of this mentality, growth engineers understand that they don’t always have to have the right answer. The optimize for learning. They listen and learn from users.
由于這種心態,成長工程師了解他們不一定總是有正確的答案。 優化學習。 他們傾聽并向用戶學習。
Good engineers learn from their failures. Ultimately, this mentality leads to better technical and product outcomes.
好的工程師從失敗中學習。 最終,這種心態導致更好的技術和產品成果。
成長工程師專注于指標 (Growth engineers focus on metrics)
Growth engineers carefully instrument their tests. When running an experiment, they define a set of metrics they want to track. Then they add ways to collect anonymized data to what they build.
成長工程師仔細測試他們的測試。 在進行實驗時,他們定義了一組要跟蹤的指標。 然后,他們添加了收集匿名數據的方法。
Let’s say a growth team wanted measure the effectiveness of a modal signup experience. An engineer would build the experience. They would then add tracking to see how many people signed up using the new experience versus the old one.
假設一個成長團隊想要衡量模式注冊體驗的有效性。 工程師會積累經驗。 然后,他們將添加跟蹤,以查看有多少人使用了新的體驗而不是舊的體驗。
Using a data-driven approach, growth engineers can iterate toward an optimal product experience.
使用數據驅動的方法,成長工程師可以迭代獲得最佳的產品體驗。
Good engineers define success metrics. Metrics move them towards an explicit goal. Metrics also prevents them from losing focus and getting distracted by things like new technologies and unnecessary complexity.
好的工程師定義成功指標。 指標使他們朝著明確的目標邁進。 度量標準還可以防止他們失去注意力并被新技術和不必要的復雜性等因素分散注意力。
For example, an infrastructure engineer’s success metric might be to reduce the build time of an app. The engineer could run a series of experiments to identify the severeness of the different performance bottlenecks. Using the data from the experiments, the engineer would be able to better identify where they could have the most impact.
例如,基礎架構工程師的成功指標可能是減少應用程序的構建時間。 工程師可以進行一系列實驗來確定不同性能瓶頸的嚴重性。 利用來自實驗的數據,工程師將能夠更好地確定它們可能在哪些方面產生最大的影響。
成長工程師測試邊緣案例 (Growth engineers test for edge cases)
Good growth engineers carefully consider edge cases when building and testing new experiences.
優秀的成長工程師在構建和測試新體驗時會仔細考慮一些極端情況。
Imagine an engineer is trying to optimize a signup flow with an experiment. The old experience was a full page redirect to a signup or login page. The new experience is a modal.
想象一下,工程師正在嘗試通過實驗優化注冊流程。 舊的經驗是將整頁重定向到注冊或登錄頁面。 新的體驗是一種模式。
An edge case for the modal experience might be that on iOS 8, the modal fails to open. If the engineer fails to cover this case, then the results of the modal experiment might show a drop in signups, even though the modal experience was better.
模態體驗的一個極端案例可能是在iOS 8上,模態無法打開。 如果工程師無法解決這種情況,那么模態實驗的結果可能會顯示注冊人數減少,即使模態體驗更好。
Good engineers test for edge cases. They work toward delivering delightful experience for everyone, not just the majority.
好的工程師會測試邊緣情況。 他們致力于為所有人(不僅是大多數人)提供愉快的體驗。
成長工程師務實 (Growth engineers are pragmatic)
A lot of growth engineers have pragmatic attitudes towards making technical decisions.
許多成長工程師對制定技術決策抱有務實的態度。
A growth team might come up with an idea for a new product feature. A good growth engineer would figure out how to build a prototype to validate the feature. The prototype might not be perfect but it gets the job done.
成長團隊可能會提出新產品功能的想法。 一個好的成長工程師會想出如何構建原型來驗證功能的方法。 原型可能并不完美,但是可以完成工作。
Once the feature is validated, meaning it’s something users want, then the engineer would go on to refactor the code. This approach reduces the amount of engineering time spent on features that end up getting retired.
一旦功能通過驗證,這就是用戶想要的功能,那么工程師將繼續重構代碼。 這種方法減少了最終淘汰的功能所花費的工程時間。
Seasoned software engineers knows that there is a trade off between moving fast and taking the time to ship perfect code. Being pragmatic means that an engineer can evaluate trade offs and identify the route that ultimately increases the productivity of their team.
經驗豐富的軟件工程師知道,在快速移動和花時間發布完美代碼之間要權衡取舍。 務實意味著工程師可以評估折衷方案并確定最終提高團隊生產力的途徑。
成長工程師具有良好的產品直覺 (Growth engineers have good product intuition)
Product intuition is the intangible ability to make good product decisions. It comes from being passionate about building products and observant of the products available today.
產品直覺是做出良好產品決策的無形能力。 它來自對建筑產品的熱情和對當今可用產品的觀察。
Growth engineers need good product intuition. Experiments are designed to collect data to test product assumptions. However, without product intuition, no assumptions can be made.
成長工程師需要良好的產品直覺。 實驗旨在收集數據以測試產品假設。 但是,如果沒有產品的直覺,就無法做出任何假設。
Product intuition is an asset to all engineers. It brings them one step closer to their users. The more accurate product assumptions are, the more time teams can spend on building the right features.
產品直覺是所有工程師的財富。 這使他們離用戶更近了一步。 產品假設越準確,團隊就可以花更多的時間來構建正確的功能。
There is a lot we can learn from listening to and observing the engineers around us. Surround yourself with people smarter than you.
通過聆聽和觀察我們周圍的工程師,我們可以學到很多東西。 與比您更聰明的人在一起。
A big thanks to Chris for teaching me the ropes as a growth engineer.
非常感謝Chris教我如何擔任成長工程師。
What traits do you consider important in an engineer? Leave a note below or tweet at me.
您認為工程師的哪些特質很重要? 在下面留言或發推文給我。
You can find me on Medium where I publish every week. Or you can follow me on Twitter, where I post non-sensical ramblings about design, front-end development, and virtual reality.
您可以在我每周出版的Medium上找到我。 或者,您可以在Twitter上關注我,在該處我發布有關設計,前端開發和虛擬現實的無意義的雜談。
P.S. If you enjoyed this article, it would mean a lot if you click the ? and share with friends.
PS:如果您喜歡這篇文章,那么如果單擊“?”將有很多意義。 并與朋友分享。
翻譯自: https://www.freecodecamp.org/news/what-growth-engineers-can-teach-us-about-engineering-f8bd38516e3e/
網絡工程師需要哪些知識