以非本科系的身分,找到了一份寫程式的工作

更新於 發佈於 閱讀時間約 2 分鐘
僅就自身的經驗作為心得記錄,並不適用於每個人,請斟酌參考。
畢業於理工科系,最初接觸的程式語言不是現在人人推前後端都能做的javascript,也不是初學易懂好上手應用廣的python,而是如同傳統企業核心用COBOL、Java,理工科入門語言--fortran。這一點在面試時也不意外的被面試官嘲弄了一番,在他那個年代學的東西到了現在還被學校當作入門,同時也被質疑到底會不會寫程式。
什麼程度才能叫做會寫程式?
以程式語言都有的基本共通特性來說,要學的不外乎
  1. 變數
  2. 判斷邏輯
  3. 迴圈
  4. 陣列
  5. function
做為科學應用,上面提到的部分已經可以完成大多數要做的基礎內容,畢竟只是想辦法把推倒運算後的數學式改用程式腳本寫出來罷了,要的是結果,程式只是工具。能不能跑?當然可以!程式運行效率很差而已,其中的問題在於不具有軟體設計的思維,不考慮模組化、不考慮維護性、不考慮擴充性、不管時間複雜度,只要好好的運作這些步驟,活像個巨集指令。
之後真正考慮把寫程式作為工作選項之一,我思考的不是去培訓機構,而是看看自己與本科生間缺了什麼該補足的地方。於是在Youtube上找到了CS50的公開課,教授解釋得很清楚,於是又碰了點C語言,深入點資料結構,接觸網路運作,一點一點的挖,一點一點的補,在了解一定程度後,開始打開Leetcode刷刷題目作為練習。
於是自學了一段時間後,開始找了幾間公司投遞履歷,通常都會被問到一個問題:怎麼不一開始就去某某培訓機構?至少出來還有個作品。而這些比較深入的知識,其實不怎麼被問到,一方面也許該職缺用不到這些知識,另一方面也許面試官也不期待一個非本科的人能回答這些問題吧?
開始工作後,使用的是Java,遇到的難點不是程式邏輯,而是環境建置。Python Flask 一句flask run 就在本機啟了個server,反觀在Java內要匯入一堆XML設定檔,寫好一堆設定的連線,打到特定的程式運行等等。我想,對我來說工作上最大的收穫,就是把已經會的網頁呈現、程式運作、資料庫指令等等獨立的操作實際地串起來,雖然不是做得很完全,至少可以有個雛形呈現。即使這項Java的技術偏向老舊,在了解框架後再上youtube看那些Django教學也變得容易許多。
最後,我認為最重要的語言還是--英文。在google打上遇到的問題大多都是前人已經踩過的坑,或多或少會有可行的解法,具備一定的英文基礎後,不論是判斷錯誤訊息、教學資源、命名方式跟設計上,都能有進一步的理解。
當然,還是取決於想要認知的深度以及權衡所投入的時間成本。
avatar-img
12會員
71內容數
遇到的坑、解過的題、新知識的探索、舊時代的遺毒!? 工作後我發現,文件更新往往跟不上新需求的更迭,犯錯的歷史總是不斷重演。因此,我改變了方式,蒐集從程式上、系統上的每一次異常處理過程,好讓再次遇到相同的問題時能快速應變。此專題就是我的錯題本,期待日後不管在工作上或交流上遇到難題,都能輕鬆地應答:有什麼難的,我都踩過。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Err500 的其他內容
兩年前第一次在誠品打開斜槓青年這本書,當時是為了找日本語gogogo系列以及python相關書籍,經過暢銷書促銷區便隨手拿起翻翻。在那之前早在youtube上看過各式各樣的說書,花了兩小時讀完後,有種相見恨晚之感,因為發現作者許多思維與自己相似,並且以更精煉、更明確的字句闡述,也串聯起以往在不同領域
寫在前面 會想找這本書來看並不是路過翻翻,在FB上曾掃到此書的推薦,又在youtube上看玩說書的影片,才決定路過書店時拿來看看。一共花了兩天,合計大約4小時看完,算是一本需要稍微停下來好好消化一番的書。
下了班經過書店,拿了幾本書,掃過前言跟目錄後就決定把這本書給繼續看下去。 腦科學的書呈現上通常都是類似的方式,講述記憶的運作、腦的組成連結、以及多個研究實證例子,有些雖然舉例生活化,可是理論枯燥乏味。然而本書編排上有些刻意營造的"巧思",讓你從頭看到尾才會發現其中的意義。
你或許聽過只要每天進步1%,一年後就會有37倍的成長,可是如果每天退步一點點,結果只會剩下原本的0.03。所以要透過持之以恆的進步,讓時間複利產生驚人的成果。哦...真的是這樣?
題目敘述 輸入兩個數字N1、N2 輸出N1、N2、兩數的最大公因數、兩數的最小公倍數
題目敘述 撲克牌有4種花色,分別是黑桃、紅心、方塊跟梅花 其中每一中花色都有一個數字,範圍從1~13,總共13*4 = 52張牌 1) 請從52張牌中挑選13張牌,輸出第一列所示,牌跟牌之間用tab隔開。 2) 請將抽出的13張牌依數字由大至小排序,同樣數字下比花色。
兩年前第一次在誠品打開斜槓青年這本書,當時是為了找日本語gogogo系列以及python相關書籍,經過暢銷書促銷區便隨手拿起翻翻。在那之前早在youtube上看過各式各樣的說書,花了兩小時讀完後,有種相見恨晚之感,因為發現作者許多思維與自己相似,並且以更精煉、更明確的字句闡述,也串聯起以往在不同領域
寫在前面 會想找這本書來看並不是路過翻翻,在FB上曾掃到此書的推薦,又在youtube上看玩說書的影片,才決定路過書店時拿來看看。一共花了兩天,合計大約4小時看完,算是一本需要稍微停下來好好消化一番的書。
下了班經過書店,拿了幾本書,掃過前言跟目錄後就決定把這本書給繼續看下去。 腦科學的書呈現上通常都是類似的方式,講述記憶的運作、腦的組成連結、以及多個研究實證例子,有些雖然舉例生活化,可是理論枯燥乏味。然而本書編排上有些刻意營造的"巧思",讓你從頭看到尾才會發現其中的意義。
你或許聽過只要每天進步1%,一年後就會有37倍的成長,可是如果每天退步一點點,結果只會剩下原本的0.03。所以要透過持之以恆的進步,讓時間複利產生驚人的成果。哦...真的是這樣?
題目敘述 輸入兩個數字N1、N2 輸出N1、N2、兩數的最大公因數、兩數的最小公倍數
題目敘述 撲克牌有4種花色,分別是黑桃、紅心、方塊跟梅花 其中每一中花色都有一個數字,範圍從1~13,總共13*4 = 52張牌 1) 請從52張牌中挑選13張牌,輸出第一列所示,牌跟牌之間用tab隔開。 2) 請將抽出的13張牌依數字由大至小排序,同樣數字下比花色。
你可能也想看
Google News 追蹤
Thumbnail
從範例學python的目標讀者: 針對剛進入的初學者,想學習Python語言。 有基礎本數學邏輯基礎即可。 從小遊戲學python的目標讀者: 針對已經有經驗的C/C++, Python, 或其他有程式基礎的讀者。 想實作一些小專案,從實做中學習如何分析需求、元件分拆、到底層實作
Thumbnail
Python擁有便攜性和通用性,適用於多種場景,同時具有全球通用性。Python在科技製造業、資料分析、人工智慧等領域有廣泛應用,對於理工科背景者而言有獨特的優勢。透過在線課程、自學書籍、實作專案,以及參與社群和開源專案,理工背景者可以達成從轉職進入Python程式領域的目標。
Thumbnail
我其實不算程式出身。 我在香港中學畢業(亦則高中畢業)後,飛到台灣讀多媒體,大二才接觸程式。 如果是程式老手,可能可以直接用C++、Python這些程式語言來做遊戲。但新手如(當時的)我,需要一個遊戲引擎。 事實上,程式老手也會需要遊戲引擎。畢竟直接使用程式碼大概就和鑽木取火差不多,而遊戲引擎
在一次五天的年假中,我決定開始學習Python編程。雖然最初進展順利,但後來發現自己在解題和邏輯方面遇到了困難。經過思考後,我決定轉而學習C/C++,並且制定了一個計畫,希望成為一名後端工程師。這將需要挑戰我的時間管理能力。
Thumbnail
初入IT產業的人士在學習Python語言後,IT證照如ITS Python認證是否值得考取?本文以ITS證照特點、實施建議和IT認證考試資訊為主,詳述證照的好處和準備時間。
上一篇主要在說如何做決定的,這篇就來寫寫面試前該做什麼準備。
不知不覺也轉職做了半年多,想說好好打成一些文章當紀錄,也讓有些想轉職的人不小心搜到這文章可以當作參考。雖然說個人經驗只適用於個人,但我想多數人還是需要一些成功的經驗分享當作鼓勵。
Thumbnail
前文提到我按照某公司培訓營的指示自學了Scratch,並完成了一個不太理想的「半成品」程式。幾個月後,我參加了另一個課程,不同的是這次是使用PHP,為期三天(週三至週五),每天上課四小時,總計約12小時。課程內容包括基礎語法與環境架設、網路爬蟲、實際構建購物車並與資料庫進行串接。
Thumbnail
透過分享我的資訊科技業初探故事,探討如何從非相關背景且不懂寫程式的人進入資訊科技業,並介紹了我因薪資潛力和遠距工作機會而受到吸引的經驗。
Thumbnail
從範例學python的目標讀者: 針對剛進入的初學者,想學習Python語言。 有基礎本數學邏輯基礎即可。 從小遊戲學python的目標讀者: 針對已經有經驗的C/C++, Python, 或其他有程式基礎的讀者。 想實作一些小專案,從實做中學習如何分析需求、元件分拆、到底層實作
Thumbnail
Python擁有便攜性和通用性,適用於多種場景,同時具有全球通用性。Python在科技製造業、資料分析、人工智慧等領域有廣泛應用,對於理工科背景者而言有獨特的優勢。透過在線課程、自學書籍、實作專案,以及參與社群和開源專案,理工背景者可以達成從轉職進入Python程式領域的目標。
Thumbnail
我其實不算程式出身。 我在香港中學畢業(亦則高中畢業)後,飛到台灣讀多媒體,大二才接觸程式。 如果是程式老手,可能可以直接用C++、Python這些程式語言來做遊戲。但新手如(當時的)我,需要一個遊戲引擎。 事實上,程式老手也會需要遊戲引擎。畢竟直接使用程式碼大概就和鑽木取火差不多,而遊戲引擎
在一次五天的年假中,我決定開始學習Python編程。雖然最初進展順利,但後來發現自己在解題和邏輯方面遇到了困難。經過思考後,我決定轉而學習C/C++,並且制定了一個計畫,希望成為一名後端工程師。這將需要挑戰我的時間管理能力。
Thumbnail
初入IT產業的人士在學習Python語言後,IT證照如ITS Python認證是否值得考取?本文以ITS證照特點、實施建議和IT認證考試資訊為主,詳述證照的好處和準備時間。
上一篇主要在說如何做決定的,這篇就來寫寫面試前該做什麼準備。
不知不覺也轉職做了半年多,想說好好打成一些文章當紀錄,也讓有些想轉職的人不小心搜到這文章可以當作參考。雖然說個人經驗只適用於個人,但我想多數人還是需要一些成功的經驗分享當作鼓勵。
Thumbnail
前文提到我按照某公司培訓營的指示自學了Scratch,並完成了一個不太理想的「半成品」程式。幾個月後,我參加了另一個課程,不同的是這次是使用PHP,為期三天(週三至週五),每天上課四小時,總計約12小時。課程內容包括基礎語法與環境架設、網路爬蟲、實際構建購物車並與資料庫進行串接。
Thumbnail
透過分享我的資訊科技業初探故事,探討如何從非相關背景且不懂寫程式的人進入資訊科技業,並介紹了我因薪資潛力和遠距工作機會而受到吸引的經驗。