日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

如何成为一名有效的软件工程师

發(fā)布時(shí)間:2023/11/29 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何成为一名有效的软件工程师 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

by Luis Santiago

路易斯·圣地亞哥(Luis Santiago)

如何成為一名有效的軟件工程師 (How to become an effective software engineer)

When I first started my journey as a software engineer I quickly noticed the great amount of cognitive load involved when working on enterprise projects. There are many moving targets throughout the execution of a plan.

當(dāng)我剛開始作為軟件工程師的旅程時(shí),我很快注意到從事企業(yè)項(xiàng)目時(shí)涉及大量的認(rèn)知負(fù)擔(dān)。 整個(gè)計(jì)劃執(zhí)行過程中有許多移動目標(biāo)。

Clean code, tests, security, config files, performance, deployments, and many more variables commonly form part of the mental load required for successful completion of a project.

干凈的代碼,測試,安全性,配置文件,性能,部署以及許多其他變量通常構(gòu)成成功完成項(xiàng)目所需的智力負(fù)荷的一部分。

I was contemplating a paradox I have seen many engineers face: trying to stay up to date with the latest trends in this ever-changing software industry while delivering great value to the company I work for.

我當(dāng)時(shí)正在考慮一個(gè)我已經(jīng)看到許多工程師面對的悖論:試圖跟上這個(gè)瞬息萬變的軟件行業(yè)的最新趨勢,同時(shí)為我工作的公司帶來巨大的價(jià)值。

I was craving time outside Jira stories to dedicate effort to my growth.

我渴望在Jira故事以外的時(shí)間花些時(shí)間為自己的成長付出努力。

And then I started seeking tools that could help me add tremendous value to my organization, maintain growth, and become effective.

然后,我開始尋找可以幫助我為組織增加巨大價(jià)值,保持增長并變得有效的工具。

意識到什么很重要 (Awareness About What Matters)

My main source was mentorship from people in the technology industry. Especially, mentorship in book formats from authors like Gary Vaynerchuk, Cal Newport, and Edmund Lau.

我的主要資源來自技術(shù)行業(yè)的指導(dǎo)。 特別是,來自加里·維納楚克(Gary Vaynerchuk),卡爾·紐波特(Cal Newport)和埃德蒙·劉(Edmund Lau)等作家的書籍形式的指導(dǎo)。

I identified a pattern in their advice. It was awareness — deeply understand what matters and execute towards that goal. The identification of clear goals gives us opportunities to measure them. Self-awareness allows us to recognize the things we do best and also see our weaknesses.

我在他們的建議中確定了一種模式。 這是意識-深刻理解重要的事情并執(zhí)行該目標(biāo)。 明確目標(biāo)的確定為我們提供了衡量目標(biāo)的機(jī)會。 自我意識使我們能夠認(rèn)識到自己最擅長的事情,也可以看到自己的弱點(diǎn)。

“Accept your shortcomings, and strive to become more conscious of who you really are.” — Gary Vaynerchuk“接受自己的缺點(diǎn),并努力使自己更加了解自己。” — Gary Vaynerchuk

杠桿作用 (Leverage)

In the book The Effective Engineer, Edmund Lau suggests leverage as a yardstick for effectiveness. Leverage is the return on investment for the effort that is put in. I see this as a generic definition of leverage. Combining Edmund Lau’s equation of leverage gives me a whole new perspective of its definition:

在《有效工程師》一書中,埃德蒙·劉(Edmund Lau)建議將杠桿作用作為提高效率的標(biāo)準(zhǔn)。 杠桿是投入的投資回報(bào)。我認(rèn)為這是杠桿的一般定義。 結(jié)合Edmund Lau的杠桿方程式,為我提供了其定義的全新視角:

Looking at the equation above I make sense of the parameters that influence the outcome of leverage.

看上面的方程式,我理解了影響杠桿結(jié)果的參數(shù)。

Before I start developing code, I commonly have an idea of how the product implementation will produce impact to the business. Even after implementation, I can measure its true impact by tracking logs, usage, and adoption rate. This numerator, impact produced, is indirectly given to us.

在開始開發(fā)代碼之前,我通常會了解產(chǎn)品實(shí)施將如何對業(yè)務(wù)產(chǎn)生影響。 即使在實(shí)施之后,我也可以通過跟蹤日志,使用情況和采用率來衡量其真正的影響。 這種分子, 產(chǎn)生的影響是間接給我們的。

The denominator is the parameter we have the most trackability over. Time invested is the value we can measure, before, during, and after execution. Putting in effort to keep this parameter to a minimum yields a higher leverage. This means higher return on investment (ROI).

分母是我們可追蹤性最高的參數(shù)。 投入的時(shí)間是我們可以在執(zhí)行之前,之中和之后衡量的價(jià)值。 盡力將這個(gè)參數(shù)保持在最小值會產(chǎn)生更高的杠桿作用。 這意味著更高的投資回報(bào)率(ROI)。

In the case of software engineers, ROI could mean improving trust with business partners, higher rate of adoption, or reducing the time it takes to perform a certain task.

對于軟件工程師而言,ROI可能意味著提高與業(yè)務(wù)伙伴的信任度,更高的采用率或減少執(zhí)行特定任務(wù)所需的時(shí)間。

To achieve this, we have to get good at getting things done efficiently.

為此,我們必須善于高效地完成工作。

“Effective engineers are not the ones trying to get more things done by working more hours. They are the ones who get things done efficiently — and who focus their limited time on the tasks that produce the most value.” — Edmund Lau“有效的工程師并不是試圖通過工作更多的時(shí)間來完成更多工作的人。 他們是高效完成工作的人,他們將有限的時(shí)間專注于產(chǎn)生最大價(jià)值的任務(wù)。” -劉德華

In the book High Output Management, ex-CEO of Intel Andrew Grove shares three ways to increase leverage:

在《高輸出管理》一書中,英特爾前首席執(zhí)行官Andrew Andrew Grove分享了三種提高杠桿率的方法:

  • Reduce the time it takes to complete a certain task

    減少完成特定任務(wù)所需的時(shí)間
  • Increase the output of an activity

    增加活動的輸出
  • Shift to higher-leverage activities

    轉(zhuǎn)向高杠桿活動
  • And Edmund Lau complements them with three questions:

    劉德華補(bǔ)充了三個(gè)問題:

  • How can I complete this activity in a shorter amount of time?

    如何在較短的時(shí)間內(nèi)完成此活動?
  • How can I increase the value produced by this activity?

    如何增加這項(xiàng)活動產(chǎn)生的價(jià)值?
  • Is there something else I could spend my time on that would produce more value?

    還有什么我可以花時(shí)間在上面的東西可以產(chǎn)生更多的價(jià)值嗎?
  • I sometimes get laser-focused on a specific coding task. However, I find it beneficial to stop once in a while and ask myself these three questions. I see them as a pulse check for effectiveness.

    有時(shí)我會專注于特定的編碼任務(wù)。 但是,我發(fā)現(xiàn)偶爾停下來問自己這三個(gè)問題是有益的。 我認(rèn)為它們是對有效性的脈搏檢查。

    心態(tài) (Mindset)

    The perspective of our own intelligence, character, and ability deeply affects how we lead our lives.

    我們自己的才智,性格和能力的觀點(diǎn)深刻影響著我們的生活。

    The adoption of a growth mindset is one of the most impactful concepts I have come across. Mostly because it is an effective tool for developing our confidence. There come times in which we feel the famous imposter syndrome creeping in. We might feel like our skills don’t line up with what “they” are looking for.

    采納成長心態(tài)是我遇到的最有影響力的概念之一。 主要是因?yàn)樗墙⑽覀冃判牡挠行Чぞ摺?有時(shí)候,我們會感覺到著名的冒名頂替綜合癥正在蔓延。我們可能會覺得我們的技能與“他們”想要的東西不符。

    But when you adopt a growth mindset, you tell your story. You tell who you are, what skills you’ve built, what you are excited about doing next and why. Consciously recognizing areas of improvement and actively executing a plan of self-betterment. It means taking responsibility for each aspect of a situation that you can change.

    但是,當(dāng)您采用成長心態(tài)時(shí),就會講自己的故事。 您可以說出自己是誰,已經(jīng)建立了哪些技能,對接下來的工作感到興奮以及原因。 自覺認(rèn)識到需要改進(jìn)的地方,并積極執(zhí)行自我改善計(jì)劃。 這意味著對您可以更改的情況的各個(gè)方面負(fù)責(zé)。

    Learning, just like invested money, also compounds:

    就像投入金錢一樣,學(xué)習(xí)也會使:

  • Knowledge gives you a foundation to gain more knowledge.

    知識為您提供了獲取更多知識的基礎(chǔ)。
  • The earlier you optimize for learning the more time your learning has to compound.

    優(yōu)化學(xué)習(xí)的時(shí)間越早,學(xué)習(xí)的時(shí)間就越多。
  • Even small deltas in your learning rate can make a big difference in the long run.

    從長遠(yuǎn)來看,即使您學(xué)習(xí)率的差異很小,也會產(chǎn)生很大的變化。
  • 限制進(jìn)行中的工作量 (Limit the Amount of Work in Progress)

    Checklists can improve outcomes. They are a tool used to reduce errors in many fields. Keeping a checklist helps me transfer all the effort of remembering what I have to do next from my mind to another place. This allows me to focus my brain power on problem solving and development.

    清單可以改善結(jié)果。 它們是用于減少許多領(lǐng)域中的錯(cuò)誤的工具。 保留清單有助于我將記住下一步工作的所有精力從腦海轉(zhuǎn)移到另一個(gè)地方。 這使我可以集中精力解決問題和解決問題。

    Avoid context switching. Focus your undivided attention to one task at a time.避免上下文切換。 將您的專心專注于一次完成一項(xiàng)任務(wù)。

    Any form of distraction, including working on multiple tasks at the same time, takes away from my ability to become effective. When possible, I apply deep work, a skill I learned from Cal Newport’s book Deep Work. I make a conscious effort to shut off all distractions and work on developing mastery.

    任何形式的分心,包括同時(shí)處理多個(gè)任務(wù),都會使我失去有效的能力。 在可能的情況下,我會應(yīng)用深度工作,這是我從Cal Newport的著作《深度工作》中學(xué)到的技能。 我有意識地努力阻止所有干擾,并努力發(fā)展掌握能力。

    Cal Newport defines Deep Work as:

    Cal Newport將Deep Work定義為:

    “Professional activities performed in a state of distraction-free concentration that push your cognitive capabilities to their limit. These efforts create new value, improve your skill, and are hard to replicate.” — Cal Newport

    “專業(yè)活動是在無專心的狀態(tài)下進(jìn)行的,這會使您的認(rèn)知能力達(dá)到極限。 這些努力創(chuàng)造了新的價(jià)值,提高了您的技能,并且難以復(fù)制。” —卡爾紐波特

    結(jié)語 (Wrapping up)

    The practice of adopting a growth mindset toward new skills makes us better learners and more willing to stretch beyond our comfort zone.

    對新技能采取成長型思維的做法使我們成為更好的學(xué)習(xí)者,更愿意超越自己的舒適范圍。

    Many times, I have felt excited about a new project idea. I think about the amount of value its implementation could add. Then I also think about all the things that could go wrong. I think about failure. I feel fear. I stop.

    很多時(shí)候,我對一個(gè)新的項(xiàng)目構(gòu)想感到興奮。 我認(rèn)為其實(shí)施可以增加多少價(jià)值。 然后,我還要考慮所有可能出錯(cuò)的地方。 我考慮失敗。 我感到恐懼。 我停下。

    But with a growth mindset, I understand I must reach beyond that thinking cycle. I understand I am always learning. Just like a product in beta, always in progress. Always in a constant iteration. Then I keep moving onwards along my journey to effectiveness.

    但是,以成長的心態(tài),我明白我必須超越這一思維周期。 我知道我一直在學(xué)習(xí)。 就像Beta版的產(chǎn)品一樣,它總是在不斷發(fā)展。 始終處于不斷的迭代中。 然后,我會繼續(xù)朝著有效的方向前進(jìn)。

    翻譯自: https://www.freecodecamp.org/news/how-to-become-an-effective-software-engineer-b2d25b588bc8/

    總結(jié)

    以上是生活随笔為你收集整理的如何成为一名有效的软件工程师的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。