生物資訊工程師要有哪些經驗和技能


台灣目前(2022)最多的工作機會是基因體定序與分析,在 104 上隨時都可以看到,
應用領域其實就是精準醫療跟微生物研究。

至於商業市場沒這麼大的醫療影像、生物統計、質譜分析、抗體設計等工作機會就是可遇不可求了

薪水不可能比科技業好

得先講這前提,還很願意做下去的真的是有熱情有動力了
不好是多不好,薪水的標準不是以軟體業的底標當標準,而是使用科技部研究助理的標準之上一點
以新鮮人來說碩士研究助理是 3.7 萬,所以求職平台上看到的面議其實差不多就是4-4.5 萬而已

大部分年終是 1 個月等於年薪落在52-58.5 萬
即使年資增加,極限大約就在 70 萬/年吧
不用太期待可以高出這個數字多少,博士的話當然會是月薪 6 萬當低標,但業界需求少很多

不是說無下限接受低薪嘿
有的公司真的很羞辱生物資訊這項專業,低於 3.7 萬這種的就完全不用去了
別因為要找工作就作賤自己

真的留下的人是誰

原本念生物後來學資訊的人
如果是學生時代是受資工甚至生物資訊訓練的人幾乎都不會留下來
留下來的人純粹是種熱情甚至是執念吧

我的本意不是想勸退,而是想要大家想清楚是否真的喜歡生物資訊
如果跟軟體業相比沒有絕對的興趣差距的話,那就去軟體業吧

Skills

Python

程式語言必定要學,只會用線上工具或軟體的話就算了吧
也不用去學啥 Excel 函式,那種東西用程式語言就可以輕易完成了

程式語言要學哪個?
沒有特殊需求或堅持強烈建議 Python
學習資源很多,以後要換跑道也依然適用
很多生資工具開發者也是用 python 開發的
可以看他們的程式碼學習

要學到啥程度?
學到會把程式寫成 command-line 執行、可以呼叫第三方工具、不同功能模組化

Linux

生物資訊工具幾乎都是在 Linux 開發的
這領域面向的使用者不是一般大眾,而是生物專業
需要可以容易且快速整合各種資源
當然也可以在 Windows 和 MacOS 使用生資工具,但不一定可以支援

要學到啥程度?
基本指令總要會吧,像是 cd, ls, grep, curl, mkdir, chmod…

哪個 distribution?
大部分應該是 Ubuntu,其他的也行就是了,沒這麼嚴重的絕對限制

Git

只要是撰寫程式碼的專案都會需要用到版控
不止有 git 是版控軟體,只是生資界看下來都是用它

要會到啥程度?
git add, commit 最基本吧
版控也絕對不只是在本機,通常情境會是 repo 是在公司的伺服器
所以除了 clone 也要 push, pull

如果你的 side project 有 git commit 還有 branch
然後會 push 到 github 就行了

自己一人開發比較少遇到程式碼發生衝突
遇到的話要會選擇要留下哪個版本的程式碼然後 merge

最理想是熟悉分支管理
有規模的專案一定都用 branch 去區分已釋出和開發中的版本
詳細版控流程可以參考下面連結

A successful Git branching model

Docker

開發好程式之後可能會在別台主機執行
如果缺少套件或函式庫就會出錯
為保證在不同主機都可以獲得一致的分析結果,容器化技術就是個方便快速的解決方案

至少要會寫 Dockerfile 建立 image、push 到私人的 dockerhub

Mysql

要加速搜尋大數據或是要管理大數據都會使用到資料庫管理
不一定要 mysql,任何一種關聯或非關聯資料庫都可以
至於要會到啥程度,瞭解結構、指令就行了
用 SQL 指令操作或是各種程式語言的 ORM 都可以操作資料庫

Nextflow or Snakemake

工作流程的框架,但這可學可不學
要建立 workflow 可以用 python 甚至 bash script 就能完成了
就看那家公司是不是有這種偏好,我看到的是 ACT 和創源是希望有這技能

Experience

分析的種類百百種,依照共通點來說的話,就是建立分析流程
不管是要組裝基因體、資料探勘、深度學習、視覺化…
最終都是要整合成多套的分析流程
所以才會出現 Nextflow 這類的 workflow framework
只有單一個技能的確是會扣點分,但也不致於不錄用啦,就是被當個新人而已

職缺範例

就直接來看現在有哪些職缺(2022/09 查詢)
在 104 搜尋“生物資訊”挑選幾個

整體看下來會發現大同小異,要求條件都一定有程式語言、Linux,大部分要會 docker、git
再來就是針對不同領域的需求了(NGS、人工智慧之類的)


安肽生醫科技股份有限公司

職稱

生物資訊研究人員

工作內容

  1. 次世代序列(NGS)資料處理分析與統整
  2. single cell RNA-seq 等癌症相關資料分析
  3. 新穎性抗體藥物相關研究與計算技術開發
  4. 其他資訊相關交辦工作

要求條件

  1. 一年以上學研界或業界相關生物資訊研究經驗
  2. 熟悉 Perl/Python/R/PHP/Java/C++至少其中一種程式語言,能獨立撰寫程式並具備 LINUX 基本操作能力
  3. 熟悉次世代序列分析(NGS)流程,有實際分析資料經驗
  4. 具備基礎分子生物學、生物化學或免疫學相關知識
  5. 擁有良好的學習能力與態度,能接受挑戰與學習新技能如 AI 新技術

ACT Genomics Co. Ltd_行動基因生技股份有限公司

職稱

生物資訊工程師

工作內容

本職務協同 Wet-lab 研發團隊,共同開發檢測產品所需之生物資訊分析流程,執行詳細的數據分析,將結果展示給研發團隊。工作內容如下:

  1. 開發癌症基因檢測相關的生物資訊分析流程與方法
  2. 依據研發團隊之產品開發需求,結合生物資訊及統計方法,開發相關的演算法。
  3. 協助建立生物資訊分析軟體驗證流程,需撰寫相關技術文件。
  4. 協助伴隨式檢測開發,需撰寫相關法規文件。

要求條件

【Must have】

  • Familiar with Linux/Unix
  • Programing ability of scripting languages in Python, Perl, R, etc.
  • Familiar with source code version control
  • Familiar with NGS data analyses
  • The ability to communicate with wet-lab scientists

【Good to have】

  • Experience with workflow language, for example, NextFlow
  • Experience with CI/CD
  • Experience with Docker container
  • Experience with Kubernetes
  • Experience with database operations, including either SQL or non-SQL

圖爾思生物科技股份有限公司 微生物體研究中心

職稱

生物資訊工程師

工作內容

  1. Experience in NGS or 3rd Generation Sequencing data analysis
  2. 2+ years bioinformatics experience
  3. RNA-seq/scRNA/Microbiome analysis is preferred
  4. Familiar with R or any script language
  5. Familiar with statistical concepts
  6. Responsible for internal training and technical support

要求條件

  1. Fast learner and willing to take up challenges
  2. Familiar with Linux environment and any programming language
  3. Experience in version control tools is a plus

中國醫藥大學附設醫院 醫研人工智慧

職稱

演算法開發工程師

工作內容

  1. 電腦視覺技術原理與開發及醫學影像應用。
  2. 生物醫學訊號處理之演算法開發及驗證 。
  3. NLP 自然語言處理。
  4. 生物資訊等基因序列比對、辨識等精準醫學模型開發。
  5. 熟悉流行病學、生物統計、預防醫學等相關專業知識。
  6. 三維手術規劃軟體開發。
    上述之醫療 AI 解決方案演算法開發。

要求條件

  1. 科系:工科、理科、生物醫學、資訊、生醫工程相關科系。
  2. 具 Python, R, C++ 等開發程式語言技術;熟悉 CUDA, Tensorflow, Pytorch, Caffe, Keras 等框架經驗尤佳。
  3. 具 Machine Learning, Deep Learning 等相關演算法技術及實務開發經驗
  4. 具工作熱忱且喜歡挑戰新技術。

益農有限公司

職稱

生物資訊工程師/研究員 (農林漁畜/食品/環工)

工作內容

  1. 開發基因體大數據分析與統計技術
  2. 開發生物大數據深度學習技術之產業應用
  3. 其他交辦事項

要求條件

• 熟悉 Linux 指令操作模式
• 具備資訊分析模組撰寫能力,熟悉至少一種常見程式語言(C/C++、Python、R 程式、Perl、Java…)
• 熟悉至少一種機器學習套件(Scikit-learn, PyTorch, Tensorflow, Keras…)
• 具備自然語言處理(NLP)的經驗者尤佳
• 具備 NGS 或第三代序列分析經驗者尤佳
• 具備建立統計精算模型能力者尤佳
• 具備程式開發熱忱,認真負責,有團隊合作精神並能獨立思考解決問題
• 必須有英文文獻閱讀能力


創源生物科技股份有限公司

這是用“NGS”關鍵字搜尋到的

職稱

次世代定序資訊工程師

工作內容

  1. 具專案程式開發經驗,能夠進行系統分析、規劃、分配與確保開發進度執行
  2. 熟悉生物實驗與數據分析的流程,包括 WGS、WES、微陣列、RNA-Seq(散裝和單細胞)、第三代定序。
  3. 具有蛋白質組學數據預處理、分析和多組學集成經驗者佳
  4. 熟悉 GEO、ArrayExpress、Open Targets、TCGA、CCLE、LINCS、GWAS 目錄等數據庫和平台
  5. 具 R、Shell 或 python 腳本編程能力
  6. 熟悉以下技術和環境:Linux、Git、Docker、AWS(EC2、S3)、Nextflow 或 Airflow,具大型叢集系統規劃與佈署經驗佳
  7. 具數據可視化套件使用經驗者佳。

要求條件

不拘

延伸參考

[問題] 生物資訊職涯 請益

選才育才輔助系統-生物資訊學類 - ColleGo!

「生資無價系列專題」- 生物資訊工程師修練之路


Author: Hung-Lin, Chen
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source Hung-Lin, Chen !
 Previous
生物資訊的side project 生物資訊的side project
如果要做對應徵生物資訊職缺有幫助的 side project我認為有幾個方向可以考慮 Workflow Package GUI Algorithm Pull request
2022-09-11
Next 
打包python套件上傳PyPI 打包python套件上傳PyPI
依賴套件管理專案中的python package我是用poetry管理好處是可以分開開發時才使用的套件跟程式執行時依賴的套件移除不用的套件時還可以確認依賴套件的依賴套件也全部被移除了這點是pip做不到的,他只會移除你指定的套件 這文章寫
2022-06-08
  TOC