題:
是否有不需要一整天編程的計算機工程/科學工作
watersnake
2018-06-14 21:33:41 UTC
view on stackexchange narkive permalink

我最近獲得了計算機工程學士學位,並且一直在尋找工作。我過去有4個實習機會;他們無論大小,都在政府部門和私營部門工作。但是,我發現常見的因素是它們使您站在計算機前,並且希望您連續進行8個小時的編碼。 (編輯:當我說“程序”時,我指的是編程及其所有實際需要。我整天沒有坐下來敲打出優雅而功能強大的代碼。等等。

現在,我還不是一個傻瓜。我知道在註冊時,計算機工程會涉及大量的編程工作,而且我會花費大部分時間直接與計算機進行交互。然而,實際上坐下來考慮我生命的下一個〜40年,無非是讓我感到有些不安。

我不討厭編程;我實際上很喜歡。失業時,我一直在從事個人項目,並且我通常會編碼。但是我不能持續超過4個小時而不會完全被燒毀。

我想知道是否有任何可以應用我的技能的工作,而每天卻不會被困在一件事情上,每天工作8個小時。我意識到無論我在不編程時正在做的“其他事情”都將與計算/編程(輔導,研究,寫作等)緊密相關,這完全沒問題。我只需要一些事情就可以分清責任。

我確定這些類型的工作確實存在,但是我對這個行業不了解。

編輯:我想澄清一下,我並沒有花8個小時來敲出新代碼。在幾乎每種情況下,我都在研究預先存在的代碼。因此,當然,我確實花費了大量時間調試和使用/學習其他人編寫的代碼。我認為可以肯定地假設,除非您正在開發自己的應用程序或在一家小商店工作,否則您將不會立即創建自己的全新代碼,對此我可以接受。但是,感覺我一天的90%都獨自坐在我的立方體中,凝視著IDE窗口。這確實是我覺得需要分手的部分。

評論不作進一步討論;此對話已[移至聊天](https://chat.stackexchange.com/rooms/78922/discussion-on-question-by-sawyer-are-there-any-computer-engineering-science-jobs)。
十七 答案:
DarkCygnus
2018-06-14 21:56:50 UTC
view on stackexchange narkive permalink

根據您的告訴,看來那些期望您連續幾個小時進行編碼的工作可能與CS的 Software Engineering 區域有關(儘管連續8個小時聽起來有些誇張)恕我直言)。

這類工作的代碼強度更高:設計一個項目,分配和分配任務,然後這只是編碼和編碼的問題,直到所有任務都完成為止。根據公司的規模及其所採用的慣例,這可能會導致數(4-6)個小時的“直接編碼” ...但是以我的經驗,有效的編碼時間可能要短得多。

切合實際,如果沒有錯誤或挫折,那麼如果您連續進行4-6個小時的編碼,則可以肯定,該項目將在很短的時間內完成 ...但是軟件工程還有很多其他方面,而不僅僅是像猴子一樣編碼。當您遇到錯誤時,您必須停止並思考如何解決它們,而在開始新任務時,您必須停止並思考如何繼續或諮詢同伴……正如我們所看到的,軟件工程的意義遠不止於“僅僅普通編碼”,如果我們能夠進行編碼而不會出現中斷或挫折,那麼它將運行得更加順暢。

話說回來,CS的其他領域也不需要大量代碼。例如,其中之一是 Data Science 區域。

通常,在與數據科學相關的工作中,您將更多的時間花在思考部分上,而在編碼方面花的時間更少,因為這些項目往往需要更少的代碼/樣板行,但每行往往更重要比其他類型的項目。但是,這並不意味著數據科學是CS人才的天堂。 編碼很容易,知道要編碼的內容是困難的部分,並且數據科學在思考方面有很多的困難部分(注意:我目前正在領導DS項目和軟件工程個)

所以,總結一下。也許您會對數據科學等其他領域更感興趣,或者擔任更多的主角,而這些工作需要更少的編碼和更多的管理。但是,有時必須先“爬上去”並學習您的方法,然後才能真正地完成較少的代碼密集型/領導工作。期待剛從大學畢業可能會讓我有些不切實際,但是不要因為其他幾個選擇而失去希望:

這是一個很好的答案。我要補充的是,隨著您獲得經驗並發展事業,將減少代碼密集度,而解決問題和領導能力則更加抽象。
我從事的工作連續12到16個小時不間斷地工作了幾個星期。在啟動場景中,這很普遍。幸運的是,它還涉及獲得額外的加班工資,達到雙倍的工資:)
對於需要花費大量時間(當然是在會議之外)的軟件工程師列表有吸引力的部分,它試圖弄清可怕的,混亂的,非結構化的代碼,對於數據科學家來說,它正在設法弄清可怕的,混亂的,非結構化的數據。
看,我想我可能喜歡Data Science。我喜歡Python,我知道它有大量的DS和ML開發人員。我也知道一些TF,numpy和matplotlib,這沒有什麼壞處。我只是對該領域經驗不足,因為它是一個快速發展的新興領域,而且在古典AI入門課程(國際象棋AI,minimax等)之外的大學中,我確實並沒有做太多的事情。另外,我覺得不勝枚舉,以至於有太多的教程承諾“從事該行業”。
@watersnake很好,如果您已經了解與DS相關的知識,那將不是一個壞主意。可能會讓人不知所措,但沒人天生就知道,因此,您一定可以通過一些努力來增強對這一領域的了解,並考慮尋求相關工作。我說這值得考慮:)
對於某些職位,可以涉及很少的編碼的另一個領域是嵌入式開發。當問題的一半時間是硬件而不是軟件時,我的大部分時間都花在了用示波器或邏輯分析儀探測時鐘信號和數據總線上,並在顯微鏡下觀察電路板(以找出冒煙的芯片)。解決方案),或試圖找出對有缺陷的電路板進行橋接的最佳方法(因此它們不是完整的註銷)。編寫代碼只是我工作的一部分。
@watersnake您提到了您總體職業的看法,因此我將在此答案和評論中添加一件事。一旦掌握了一個或多個主題,您就可以選擇成為導師和老師,並且如本答案所述,您將在設計和建築上花費大量時間。我開始每天編碼6個多小時來嘗試管理,而我幾乎從未編碼過,然後轉向設計和領導力(但不是“管理”)。現在,我只花25%的時間實際編寫代碼,25%的領導團隊會議,25%的設計會議和與利益相關者的會議以及25%的獨立設計和研究。
@DarkCygnus,是一個很好的答案,很高興知道除了編碼猴子,還有其他選擇。根據他們的技術面試的性質,我已經評估了多少工作希望我成為他們的編碼猴子,到目前為止,在我有一個潛在的雇主詢問的情況下,使用Redux有什麼好處?或告訴我準備回答建築問題。不,他們只想要一隻編碼猴子,那些決定已經由食物鏈中較高的人為我做出了。
@Daniel找到一份不錯的體面工作確實是一個挑戰。我很高興我的回答為您提供了幫助:)請記住,在您的職業生涯中,很可能某人至少一次會成為猴子。隨著人們了解自己的方式並變得更有經驗,就更容易找到這樣的替代工作。
再次@DarkCygnus,,真棒答案。我期待在這個論壇上閱讀更多您的答案。我一直喜歡跟隨經驗豐富的工程師,他們的話引起了我的共鳴。
user1683793
2018-06-14 22:12:28 UTC
view on stackexchange narkive permalink

我名義上的軟件工作(我曾擔任的職務:高級軟件工程師)要求我花大約85%的時間來收集需求,弄清楚需要更新哪些模塊,並處理“業務”(非軟件人員)等,大約有15%(如果很多)進行實際編碼。在編碼時間中,很少花費在打字上。大多數人都在試圖弄清楚代碼以前做了什麼,以及如何使代碼做我們現在需要的工作,並且影響盡可能小。辦公室中的各種老闆類型都希望我將編碼工作分擔給下級人士,但我卻退縮了,因為那是我“享受”的唯一部分。我無法從編碼中獲得持久的樂趣,但至少我沒有處理業務中的id10T。 (相反,在編寫代碼時,我會找那些在我之前的程序上工作的“次優”人員。)

我工作的應用程序是針對BIG零售商的銷售點系統(我想例如您使用它的機率約為35%。)幾件作品的年代可追溯至1990年代後期。零件是新的,不超過幾個月。所有這些都是由能力各異的人編寫和處理的。遲早必須對所有內容進行需求更改和更新。

計算您的祝福。在處理新代碼時,您不必由一些傲慢而費力的同事來更新寫得不好的代碼,這些同事對任何觸動其程序完美之處的人都懷有敵意,即使該程序已損壞並且也不必費心去修復。

在回答您的問題時,是的,雖然存在這樣的工作,但它們往往會更高級。我想我建議您花一兩年的時間,直到您對履歷表有了一點點經驗,然後再看看如何通過更多的設計等工作以及更少的直接編碼來工作。

不要忘記詛咒那些編寫欠佳代碼庫的庫或軟件的人。您知道,自項目開始以來尚未升級的產品。
這符合我的經驗。一個重要的注意事項是,越來越多的初級軟件開發人員(不到3年的行業經驗)經常會獲得大量的編碼和一些錯誤修復。直到後來,我才開始做更高層次的設計,需求等等。業務規模也改變了很多事情。大型企業有更多的專業空間,小型企業需要有人做所有事情。
根據我在小型公司和(某些)敏捷項目中的經驗:如果公司規模較小或您正在從事一個更大的敏捷項目,那麼甚至初級員工也可能包括在工作的溝通部分(例如需求收集)中。
“ 90年代後期”-不算老。我所在的一家公司的文檔開始於“我們的某些代碼比我們的某些員工更舊”
@MartinBonner 19歲或20歲的孩子可能比90年代末的代碼年輕。90年代初的代碼很容易比剛畢業的4年大學畢業生要早。
@TafT我認為,更多的初級職位會做更多的“鍵盤操作”是因為您越有經驗,就越會成為領導者。您可以協助他人,參與設計會議,使用軟件與其他團隊合作等。
jcmack
2018-06-14 22:20:41 UTC
view on stackexchange narkive permalink

實際上,指望軟件工程師每天連續進行8個小時的編碼實際上是不正常的,因為花費在編碼上的時間並不能準確地衡量進度。不幸的是,並不是您的工作被打破,而是您所處的工作文化。

對於軟件工程師來說,您的一天應該被諸如以下的事情分解: li>為新解決方案製作原型,

  • 站立/團隊會議
  • 研究您可能正在使用的新ABC工具或XYZ功能,
  • 代碼審核團隊成員,
  • 與工程經理和/或產品經理討論新功能,
  • 消除錯誤,
  • 編寫測試,
  • 計劃未來的工作,
  • 在多個團隊成員之間分配工作,
  • 指導實習生或更多初級團隊成員,
  • 得到更多高級團隊成員的指導以及
  • 更多
  • 如果該列表聽起來不像您,那麼角色/職業的變化對您很有益。

    上面的輪廓非常好。
    Dan
    2018-06-14 23:31:41 UTC
    view on stackexchange narkive permalink

    我只能脫離我的經驗。在過去十年的網絡/軟件工程師工作中,我發現平均而言,每天我大概需要1-2個小時進行實際編碼。通常最多大約10-100行代碼。剩下的時間用於研究或找出解決問題的最佳方法。

    現在很難說您的工作出了什麼問題(或沒有錯)。可能是您只是在強迫自己盡可能長時間地編寫代碼。您可以研究,開會,與隊友交談等嗎?

    我聽說過所有IT領域的血汗工廠風格工作。我知道一個動畫師真的很擅長Maya和3ds Max,他每天必須工作12-15個小時,為這家公司製作動畫,然後外包給一些較大的公司繪圖。基本上,他被告知要坐在辦公桌旁,除了午飯,他不能休息或做其他事情。有時他有時也被迫在周末上班,特別是當他們的截止日期很緊或他們不得不放鬆時。

    我觀察到這些商店規模較小,並且經常打廣告空缺職位(因為他們預期營業額很高)。他們還擁有工廠風格的辦公空間,並擁有寬敞的開放空間,每個人都可以像衣架一樣聚集在這裡,也可以將開放式商店變成“辦公室”。研究公司如何在線發布職位。如果您每週看到他們碰到相同的帖子,或者看似不確定地發布某些職位,則可能是血汗工廠風格發展的標誌。還要查看他們的玻璃門評級。

    我個人認為編碼是“研究”和“找出解決問題的最佳方法”。如果我一整天都從事這份工作,而不必參加會議,協調,培訓其他人員等工作,那麼我會認為該工作是100%的編程工作。
    以上職位是對的錢。
    fox
    2018-06-15 01:23:27 UTC
    view on stackexchange narkive permalink

    人們提到了高級/管理職位,但是既然您剛剛畢業,我將提供另一個可以較早探索的潛在選擇:為一家初創公司/小型公司工作!我只能以自己作為初級開發人員的經驗來發言。

    我在一家只有十幾名員工的B2B軟件公司工作。因為我們很小,所以大多數人都不得不戴上帽子-我正式是軟件開發人員,但是我經常做以下所有事情:

    • 需求收集/研究/計劃(獨奏和w /客戶和同事)
    • 編碼功能和錯誤修正(單獨和與同事一起)
    • 為客戶提供軟件演示/演練
    • 執行客戶端安裝和故障排除
    • 更新文檔 ​​li>

    有時候,如果我只想編寫代碼,可能會感到沮喪,但是來自多個類別的任務都需要引起注意,但是總體而言,職責如此多樣,這使得日子越來越長有趣使我對自己潛在的職業道路和不感興趣的道路有了更好的了解。

    大聲笑寫了幾乎與您發布此答案相同的答案
    我贊成你們兩個,因為你們絕對正確,較小的公司有時會要求您做所有事情
    當一家大型公司的IT部門較小時,情況也是如此。不同之處在於您的客戶位於同一建築物中,但部門不同。
    aw04
    2018-06-15 01:42:34 UTC
    view on stackexchange narkive permalink

    作為一個軟件開發人員,他也不喜歡每天8個小時都在漫不經心地編寫代碼,因此我建議偏愛小型公司。較大的公司傾向於扮演更專業的角色,而較小的公司通常要求員工戴上各種各樣的帽子。好一個如果您不花更多的時間來收集需求,與利益相關者交談,思考問題等而不是實際的編碼,那您可能就錯了。現在的就業市場相當不錯,沒有理由不應該成為代碼猴子。

    我希望我可以加分,特別是在第二段。
    Ister
    2018-06-15 16:51:13 UTC
    view on stackexchange narkive permalink

    請注意,所描述的某些角色可能不被認為是嚴格的CE,但先前的CE經驗至少非常有價值。有時,以前的“純”程序員經驗是必不可少的,並且您在代碼上工作至少幾年後才能擔任上述職位,但您指的是10多年以上的觀點。

    列表可能還不完整同樣,工作通常會從列表中組合多個(我見過很多BA / DEV和BA / PM角色),在這種情況下,您的任務包括這兩個角色的任務(份額可能不是50-50)。

    業務分析師(IT)

    我將根據經驗來描述這一點,因此我的答案將是最詳盡的。

    BA的角色是有關收集和記錄文檔要求。它可能包括從整體上理解業務,重塑流程等,或者僅專注於特定應用程序的需求。在工作角色描述(功能分析員,需求分析員)中,可能會給它取不同的名稱,但所有這些都與同一字段相關。

    大多數時候,BA會做以下三件事之一:

    • 與業務交互(會議,研討會,conf電話等)
    • 創建文檔(BRD,FSD,Backlog,手冊,數據映射,模型,GUI設計,輸入到PM管理文檔)等)。
    • 與開發人員和其他IT人員互動(解釋文檔中的內容;-))

    此外,這項工作還可以進行一些編程(我會說測試分析師,平均每個項目的平均費用約為10%,最高不超過50%),項目管理(針對特定項目的平均費用約為10%,最高為30%),測試,培訓。

    Test Analyst h2>

    作為TA,您需要負責項目的質量檢查。您與產品本身的互動比產品源代碼更多。 TA進行了各種各樣的測試,試圖驗證應用程序的行為是否正確(如果用戶做了他們不應該做的事情)。

    由於測試越來越自動化,這種類型的工作通常涉及相當多的編碼(例如定義測試機器人),但是必不可少的部分在其他地方。

    Software Architect

    這聽起來可能是開發角色,但更多的是了解軟件。 SA的主要職責是定義如何構建軟件解決方案以使其與戰略方法保持一致。 SA有兩種基本類型:

    • 特定於應用程序–完全了解特定應用程序並決定如何應用新要求以使所有內容易於維護的人員;他們確保遵循應用程序的標準(低級),確定諸如DB結構,項目中使用的技術等元素。
    • 整個組織-負責定義標準和所有應用程序的景觀。他們可能對特定應用程序的了解較少,但是應該知道例如所有應用程序之間如何相互依賴,聯繫點,公開的API等。

    通常來說,第一類SA手將任務詳細信息發送給代碼猴子;-),而第二種類型則從IT策略的角度驗證了BA的要求。

    特定於應用的SA通常也進行一些編碼,但是該編碼僅限於最困難和最有趣的區域。

    項目經理

    您將負責使事情成真。您可以管理預算,團隊,時間表等。PM可以向管理層(贊助商)報告項目的進度。

    作為PM,您不必自己編寫代碼,但可以確保項目團隊做正確的事

    生產線經理(IT)

    作為IT經理,您對您的團隊負責(但它不是PM的項目團隊)。您將處理諸如新員工,人員晉升(如果需要還可以解僱),升級等問題。根據團隊和公司規模的不同,經理還可以部分地完成與團隊相同的工作,但是通常不會超過50%的時間。當然,經理可以是任何團隊的經理,所以可以是開發人員經理,BAs經理等。

    +1,但我認為更好的措詞應該是“直線經理”。乍一看,當您說“ IT經理”時,我想的更多是操作角色...
    我真的很喜歡這個答案。值得一提的是,要成為文學士,至少要從商學院畢業,才能重返大學。
    Pablo H
    2018-06-15 01:50:09 UTC
    view on stackexchange narkive permalink

    除了已經提到的所有選項之外,還有:

    • 研究。就像在寫論文的人中一樣。您通常會做一個碩士和/或博士學位,博士後等等。主要在大學,研究機構和大型公司中。

    • 教學。在大學,學校等中

    • 寫作(例如書籍,文章)。我了解,非常,僅靠寫作很難謀生。

    • 技術寫作。規格,用戶手冊,軟件文檔。

    另外:測試經理。集成專家。API設計器。DevOps工程師。所有這些都涉及更多的工作,可能是50%的編碼。
    Peter M
    2018-06-14 22:03:19 UTC
    view on stackexchange narkive permalink

    這取決於您所定義的編程和與計算機交互的能力。

    我同意您的想法,即每週工作5天,為公司開發業務或基於Web的應用程序的想法我的餘生聽起來都在毀滅靈魂。但這不是您的唯一選擇。

    例如,如今涉及製造業,重工業或運輸的任何事物都將涉及計算機,並且計算機需要人們對其進行編程。而且沒有什麼比編寫可以控制大型和物理事物的代碼更好的了,總有一個新的,不同的工廠正在某個地方建造。

    舉例來說,現在我正在為一個代碼屏蔽代碼那些位於集裝箱港口並向/從船舶轉移集裝箱的起重機。過去,我還為鋼廠,造紙廠,鋁廠,廢水處理廠,AA電池製造甚至乳品廠編程。而且在所有這些領域中,我都有平衡的設計,編碼和現場工作,以使該死的事情正常工作。導致職業選擇的無限可能性。

    最後,編程和計算機不是一成不變的。在您的職業生涯中,您將看到隨著技術的進步而發生的所有變化,因此您將不斷學習以保持相關性。

    注意,這可以通過帶有控制器的現代PC來完成。在70年代,80年代和90年代,我是一位嵌入式系統程序員,為機械設備和獨立設備編寫啟動級代碼。核磁共振成像儀,通信設備,水下海洋探測器,衛星,新的(當時)音頻和視頻設備。極大的樂趣,而且我一直都在看新設備。無人機,機器人以及諸如農場自動化和自動駕駛汽車之類的東西,我認為這將是一件有趣的事情。比像素平滑好得多。了解您需要什麼來接近實際機械;很有趣。
    rath
    2018-06-14 21:43:36 UTC
    view on stackexchange narkive permalink

    很難在一個工作日內連續編寫超過6個小時的代碼。大約4小時的時間比您在典型工作日中的平均預期時間要少一些,但YMMV。最重要的是您要提供什麼,而不是讓您的臀部有多少小時做臀部印章的機會*。

    也就是說,您可能會發現諮詢更合適,因為它涉及到一些客戶聯繫並可能旅行。您仍然需要努力工作(可能還要更加努力),但是它與您當前使用的代碼猴子路徑的步調不同。

    另一個選擇是成為管理員。對於大多數公司來說,這是您晉升的道路,並且基本上是大規模編程。當前,您(自己)管理一個開發人員,一個經理管理多個開發人員。更少的編程依賴於公司,因此您必須與同行/初級人員打交道。

    雖然總能得到一個幸運的休息,但是通常希望重新開始會為在上述任何一項開放之前的幾年。但是,世界並不是一成不變的,您的里程也會變化。

    * sup> 讓我解碼一下:只要沒有,您就可以放縱一切一個人意識到你在發呆。最好的方法是傳達對您的期望 sub>

    我喜歡第一部分。老實說,有時候我會“走開”幾個小時,或者花時間在後台處理如何解決任務的事情……但是到最後我還是很花時間去完成任務的……也許就是這樣CS人拖延。也許這就是為什麼有時候選擇一個懶惰的人做這個工作是一個好主意的原因,因為他們會找到一種輕鬆/快速的工作方式。
    我懷疑,作為一名經理並仍然花費大量時間編寫代碼(不僅僅是在特殊情況下),這比正常情況更為例外,尤其是在您(管理)職業生涯的後期。有人可能會爭辯說,您需要委派這些才能成為好經理或高級經理。
    Lawnmower Man
    2018-06-15 05:40:54 UTC
    view on stackexchange narkive permalink

    如果您每天要寫8個小時的代碼,那麼您可能做錯了。首先,您必須非常幸運,正在從事一個綠色項目(即,根本沒有可與之交互的舊代碼)。我希望每天有接近8個小時的編碼時間。其次,聽起來您沒有編寫任何單元測試,或者您會提到調試和重構,並且編譯/運行/測試階段破壞了編碼週期。第三,如果您不必就代碼與其他人正在研究的代碼之間的交互問題與團隊成員進行協商,那麼它必須是一家很小的商店。第四,令人驚訝的是有人可以給您一個規範,您可以立即開始編寫代碼並日復一日地保持編寫代碼8個小時。

    真正的軟件工程師花了大量時間(A)弄清楚應該構建什麼(收集要求),B)了解新事物與舊事物/現有事物的融合,C)與各種利益相關者進行溝通,以確保沒有設計/ API /等方面發生衝突,D)研究現有解決方案,最佳做法,庫或您可以重用的其他組件等。

    現在,如果這聽起來完全不像您的經歷,那麼有一個很明顯的原因:您的經歷就是所有實習。儘管實習生可以很好地使您了解可能使用的工具和人員,但實習生通常必須從事可以在10到12週內完成的項目。這通常需要專職工程師無法獲得的相當不自然的項目。特別是,它通常排除了工程最重要的階段之一:設計。作為實習生,您通常會遇到問題和需要處理的設計,這樣一來,您在住宿結束時就可以向自己展示一些東西。作為一名全職工程師,最終將需要您自己設計解決方案。即使是初學者,也應該以挑剔的眼神詢問有關要實現的內容的問題。

    現在,我要說的是 relax 。幾乎不可能找到一個全職的軟件工程職位,每天需要花整整8個小時的時間,一次要花幾個星期。在任何面試中,您都可以問問面試官每天要進行多少個小時的編碼,我敢打賭您會喝咖啡,他們中的絕大多數會抱怨幾個個小時,以及他們花費多少時間來完成軟件工程的所有其他任務(修復錯誤,調查錯誤,處理易碎的工具,處理易碎的同事等)。

    我每天要花8個小時來創建新代碼(除非那是非常美好的一天)。我確實必須與同事一起進行現有代碼的開發/開發,但這僅意味著每1-2小時就可以起床並提出一個快速問題。本質上,有99%的時間都盯著IDE窗口,想知道為什麼在在線沙箱中運行的代碼無法實現實際的開發目標。
    @Sawyer,聽起來像實習生式的工作,這是我會分配給技術水平高但工作經驗很少的人的艱苦工作。就像,嘿,這是一個尚未出現的小錯誤列表。這類工作並不是很有趣,但是一旦您從事了全職工作並證明可以處理更複雜的任務,通常的日子就不會如此。
    UEFI
    2018-06-15 13:26:15 UTC
    view on stackexchange narkive permalink

    為5至15人的小型創業公司工作。

    您最終將完成其他各種業務功能。項目管理,需求捕獲,設計,測試,系統管理,用戶體驗工程,與客戶/客戶打交道,戰略會議。您現在必須做任何需要做的事情。

    您還將非常有資格從軟件開發轉移到公司的其他職位。因此,選擇一個您喜歡的行業。

    J...
    2018-06-15 16:19:49 UTC
    view on stackexchange narkive permalink

    我將以不同的角度提出建議-如果您真的想做編程以外的事情,那麼最好的方法是在其他領域發展中學技能。如果您除了編程以外還擅長其他技能,並且還具有編程能力,那麼您的實用程序將迅速發展。

    以我為例,我的背景是工程物理,電氣工程和材料科學。我沒有在大學學習編程,而是自學成才,並且作為我工作的一部分,已經從事編程工作大約17年。當然,這不是我的全部工作。

    此刻,我在一家中型公司從事工業自動化工作,因此該工作還包括許多硬件(PLC,機器人,電機,運動控制,傳感器,檢測器以及一些深奧的物理學知識) 。動手工作,系統設計,機械設計以及開發自動化軟件,HMI等的組合。

    我知道很多其他人也從事相似領域的不同工作。真正關鍵的一點是,如果您想在工作中做各種事情,則必須專注於發展各種事情的能力

    aaaaaa
    2018-06-15 05:34:25 UTC
    view on stackexchange narkive permalink

    其他答案是正確的,因為即使在軟件開發職位上,您也可能不會花費大部分時間進行編碼。我從事開發工作已有大約8年的時間,我可以告訴你,儘管我比大多數人更喜歡在計算機前工作,但我通常無法一次坐8個小時就可以集中精力。如果您獲得雇主的信任,那麼軟件開發工作的時間表往往會更寬鬆,因為他們知道您可以完成工作。有時候,我的工作量少於或超過8小時,具體取決於工作量和工作量,但我傾向於早上工作3-4個小時,然後吃午飯然後小睡。在那之後,我可以比不打a睡的繼續工作好得多。睡個好覺,保持健康飲食和消除浪費時間的活動(例如瀏覽reddit)也有助於我從編程中獲得更多的時間。您的工作效率-因此,請找出如何最大程度地提高工作效率,而不是坐在計算機前八個小時。

    Barmar
    2018-06-16 20:33:47 UTC
    view on stackexchange narkive permalink

    具有計算機科學專業知識的人可以完成許多其他工作。它們通常涉及一些編程,但這不是全部工作。

    • 系統管理-您經常必須編寫腳本來使您的工作自動化。
    • 軟件質量保證-編寫測試是編程的一種形式。在某些組織中,您可能與程序員緊密合作來解決發現的問題;其他組織在這些部門之間設有防火牆。
    • 技術支持-確定客戶問題是否是由於軟件錯誤引起的,可能需要閱讀代碼(至少,當我成為支持工程師時,我發現這很有幫助) ,您也許可以與程序員合作解決這些問題。

    但是即使作為軟件工程師,也應該有其他活動使您的工作分崩離析:

    • 設計討論(但您可能還不具備足夠的知識來參與這些討論)
    • 響應錯誤報告
    • 編寫規範,內部文檔等。
    我想知道為什麼以前沒有提到系統管理-但是,如今這工作確實涉及很多非技術性的東西,包括組織和後勤工作:)
    bharal
    2018-06-16 21:28:20 UTC
    view on stackexchange narkive permalink

    是的,有。

    從您的描述中,您聽起來像是一個喜歡編碼的學術嚴謹的人,但是發現構建解決方案的過程非常繁瑣。可能您還聽起來想要更多的人與人之間的互動-確定問題,創建解決方案(而不是構建解決方案)等等。

    嗯,有諮詢服務

    如果是這樣,那就有諮詢服務。

    通常,人們將管理顧問視為悶悶無味的工作人員。的確是這樣,但是考慮到他們的收入也要多得多,而且項目通常為1-3個月,因此儘管您可能會遇到無聊的項目,但您可能還會得到一個非常有趣的項目。您還將與最聰明,最有抱負的人一起工作。您將可以發揮學術力量並進行研究,而無需真正編寫代碼。您還可以與其他人一起工作。

    如果您想使用更多代碼,大多數大型諮詢公司現在都設有技術部門。顯然有埃森哲,但麥肯錫還設有技術諮詢部門。

    不要落入“編碼技巧意味著編寫代碼”的陷阱。

    也不要落入“ a技巧”的陷阱編碼技能意味著編寫代碼”。看起來,天哪,每個人都在這裡指出,嚴格來說,編碼從未一天發生8個小時。除了更多基於CS的“編寫代碼”和“調試”之外,還進行了澄清,研究,考慮了極端情況並確定了最佳解決方案。

    您可能會認為編碼是“編碼”。老實說不是。 “編碼”只是以一種設定的方式使用您的知識能力-,但這種方式也可以用於解決其他問題。您受過訓練以澄清,質疑,研究和確定最佳解決方案的事實對於每個其他企業和行業來說都是一個福音。如果您正在幫助製鞋公司確定最佳的工廠佈局,或者要一家家具公司確定要擴展到哪個市場,或者是否值得投資某個技術公司-您仍在做所有以上(除了編寫代碼)。一天大概還需要5個小時左右!

    哦,其他選擇

    OH。而且,如果您想知道,風險投資需要具備這些技能的人員。私募股權和交易也是如此。此外,還有林業管理,全球變暖智囊團和醫院管理。

    最後

    最後,如果您覺得自己不想整天工作8個小時,則應該強烈考慮將IT拋在後面。有大量研究表明該人找到了工作。因此,在銷售中,您通常會找到天生熱情並且樂於與人打交道(且具有競爭力)的人。在IT中,您會發現相反的情況-規避風險,害羞,不喜歡與人互動,願意獨自工作。

    現在,這是概括性的。但是,這也意味著如果您天性外向或喜歡與他人一起工作,那麼您將很難在IT領域感到快樂,因為很少有人會分享這些品質並且工作不是針對該個性類型的

    Thorbjørn Ravn Andersen
    2018-06-15 16:39:56 UTC
    view on stackexchange narkive permalink

    任何非平凡的項目都需要一個以上的人來工作(只是為了更快地完成工作),這僅意味著您就不能花一整天的時間進行編碼,因為您需要與隊友進行溝通。會議,討論,文檔,以確保您都同意,等等。

    根據我的經驗,大多數編碼工作也不受打字速度的限制,而是思考的速度,而且通常需要休息。 / p>

    總而言之,您可以做的最有效的時間上的最有效的優化就是學習打字。編程時並沒有那麼多(因為有許多難以到達的符號),但是在撰寫散文,作為文檔或會議記錄或僅是日常電子郵件時,它的幫助很大。



    該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 4.0許可。
    Loading...