跳到主要內容

【COSCUP throwback】Keynote | 參與開源


什麼是 COSCUP?

COSCUP 是亞洲最大的開源會議之一,自 2006 年開始由開源社群舉行的年度會議,也是台灣自由開源軟體運動 (FOSSM) 的主要倡導者。COSCUP 包含演講、贊助商、社群攤位,以及 BoF 社群同樂會等,COSCUP 的宗旨在於提供一個聯結開放原始碼開發者、使用者與推廣者的平台。

可惜今年因為疫情關係改為線上,但也不減大家參與 COSCUP 的熱情!

參與社群活動一直是我很喜歡做的事情之一,從演講中分享自己這段日子學習的經驗、攤位上與每位社群朋友交流意見、甚至到坐下來一起研究某段程式碼/專案的可行性,而若能在 COSCUP 中分享任何主題對我來說都是一個非常棒的肯定,因此除了在攤位與大家分享外,我也踴躍於 COSCUP 中投稿(2019, 2020),今年也很榮幸可以代表 LINE 講一場 Keynote!

Open Up with LINE - From Beginning TO THE NEXT

歡迎大家收看影片,頻道中也有許多很棒的分享喔!

今年是 LINE 的十週年,很高興可以在 COSCUP 上與大家一起分享這個喜悅,對於 LINE 來說,過去的十年只是一個開始,10 週年概念口號 “To The Next“ 表達了 LINE 將繼續傾聽用戶的聲音,並在未來 10 年繼續創造更好服務的理念。

在十週年的今天若你也對於 LINE 的工程團隊、抑或是 LINER 在 COSCUP 上分享內容有興趣,歡迎參考以下回放文章,當中都有許多很精彩的分享!

支持開源專案

或許大家很常用也熟知 LINE Chatbot、LINE Login、LIFF 等等的技術與服務,在提供服務之虞 LINE 也花了很多心力建置了許多開源專案,希望藉由分享我們的使用情境、經驗、開源貢獻來幫助每位開發者,在開發的路上能夠更高效、更有彈性的去創造許多創意的產品,以下列幾個讓大家稍微瞭解一下:

Open Source 的程式碼以及任何內容,都是經由內部縝密的各項審查才可以對外開放,因此大家在使用上不太需要擔心喔~

line/armeria

Armeria 是個讓 Java 開發者能夠使用的微服務框架,在現在容器化這麼盛行,開發上會因應許多技術需要開發,如 gRPC、Spring Boot、Kotlin 一條龍開發等等,都可以透過 Armeria 更輕易使用到許多的技術。像是 http/2、日誌記錄、監控、追蹤也都有提供,並且有 async 架構提供出色的性能跟高併發能力

另一方面,在 2020 年也正式釋出 1.0 的版本,1.0 對於大型開源專案來說都是個里程碑,意味著開源專案是能夠 Production。此外還有一個重點,就是有超多 Contributor 第一次貢獻 Pull Request 就是給 Armeria 啦,當然送 Pull Request 除了新刪修程式之外,大家也可以從修改文件、增加範例程式開始著手,此舉也可以讓你更快速地學習如何貢獻開源專案喔!

更多開源專案細節可以參考此篇文章 LINE 開發社群計畫: 「手把手教你建立自己的開源專案」

Central Dogma

隨著 CI/CD 越來越盛行,集中式管理 Config 也越來越重要,透過 Git 來做版本管理也就成為趨勢之一,查過往修改的內容、透過 Pull Request 管理、全縣管例、Git-to-CD 等等都是透過 Git 管理很重要的一環,雖然原生是透過 Java 撰寫,當然也還有其他版本的 SDK 提供給大家使用,如果大家對於 GitOps 相關實作有興趣可以使用看看。

一起參與開源

1. 動手寫作比較有印象

上述提到這麼多開源專案相關的內容,或許大家有疑問,一定要送程式碼才是參與開源嗎?當然有,就是把你所學的內容透過文章/部落格的方式記錄下來,可以是短短的一篇解決某個問題(如上圖),也可以是一整篇來解釋緣由,並分享到社群上讓更多人知道,可能你現在紀錄的問題,也正好是其他人正在卡關的問題,如果能透過分享的方式幫助到別人,是否也覺得很棒呢?

2. 開口講印象更深

另一方面,時常我們在公司內部的活動中也都鼓勵每位開發者出外至社群分享自己的經驗/心得,透過分享,驗證自己在技術領域上的理解是否正確,雖然上台講看起來是分享給觀眾們相關技術,但實際上學最多的一定是講者,從事前準備/前一天趕 Demo/整理資料/開口分享,一切都是會幫助思緒整理,讓自己更能掌握技術本身的脈絡。

還有沒有其他方法呢?來跨國公司實習也很實在

或許有些同學對自己的要求比較高,覺得自己目前能力需要磨練,或者是覺得文章需要一系列、內容深度要夠等等(準備時間需要較多),那這邊推薦一個做法 - 「實習」,實習過程中除了可以了解企業用的技術趨勢之外,也能透過與 Mentor 互相學習琢磨軟/硬實力,讓能力能透過實習的時間大幅提升。

過程中也可以透過 讀書會/工作坊/公司公開活動 爭取機會把自己學習的經驗分享給他人,同步增進自己的實力,因此,若你希望透過類似的方式來嘗試看看,除了期待接下來 TECH FRESH 招募時間外,也可以看看學長姐們的經驗分享喔!

秋季場正火熱加開中,不想錯過在跨國公司實習機會趕快手刀投下你的履歷,此次期間即日起至 2021.11.12 截止,趕快把握機會~

團隊介紹

Frontend 工程團隊

LINE 裡有許多服務都是使用 Web 相關技術打造而成的,而作為前端的一份子,就是要讓用戶可以在 Client 端與 Web 端使用起來的體驗一致,以下這些服務你使用時是否也覺得跟 APP 差不多呢?

且由於前端產品線很多,許多時候需要打造共用的工具來讓不同服務可以使用共同的元件,把已有成效的解決方案有計畫的打造出來,除了品質統一與避免重造輪子之外,也讓往後新進來的人員能夠有個標準化的內容參閱來維護既有的產品。

而接下來公司的方向將會漸漸將重心轉換到自然流量上,因此 Frontend 團隊就會更多處理 SEO 與 Web 效能優化 相關的工作內容,同時也引入 SSR 以及 AMP 來對齊公司的目標。

當然在裡面也會與不同團隊的成員合作,讓產品可以更快速地交付、維護、更安全以外,內部也會透過分享來讓更多團隊了解不同的解決方案的優點。

最後,Frontend 團隊由於成員會持續協助不同專案以及產品的開發,在大家學習到不同的經驗之後也會透過許多的讀書會來分享不同專案間的差異與經驗,藉由交流也讓彼此可以更快速的上手且了解不同專案的屬性。

今年 Front-end Engineer 正在擴大招募,尋找在前端領域的高手們來一同來打造驚艷的產品於 LINE 生態系中。

LINE Pay 團隊

除了大家平常所使用且熟悉的支付服務以外,其實日常也需要處理金融相關信用卡回饋等等的專案內容,而從 TECHPUSE 2020 之後,LINE Pay 陸續提供了 Extra Service 來達到在地化服務,像是 我的會員卡廣告投放與透過LINE Pay 地圖讓大家知道到底有哪些商家支援 LINE Pay,不用出門就可以知道可去哪邊使用 LINE Point 回饋點數了。

在日常處理不同的專案之外,LINE Pay 也含有許多內部 PoC 專案,身為工程師一定會有很多想法想用,想實驗很多新學的東西,透過這些專案去驗證想法的可行性,讓想法有機會進入產品之中。

若認同 LINE Pay 文化,歡迎加入 LINE Pay:

Q: 請問不熟 Java 可以投 LINE Pay backend 嗎? 例如: Python, Go。
A: 都歡迎來面試,不過可以多花一點時間準備 JAVA 會比較好。

Q: 請問專案開發,包括 planner, dev, security, qa 總共有多少人執行一個專案?
A: 實際上人數沒辦法透露,但參與人數會跟專案大小有關。

LINE TODAY 團隊

作為大家天天會用的主流新聞平台,除了日常提供大家許多新聞相關題材外,其實裡面也含有許多不同的內容,如:賽事直播(近期很火紅的 NBA 季後賽也有轉播)、
電影訂票選情專區泰國限定的樂透電影…等等,擁有這麼多功能都是為了讓用戶可以在 LINE TODAY 中看到大家最新、最值得關注的內容。

擁有這麼多功能的平台,同時也是一個跨國的產品,同時也提供給泰國、印尼以及香港,為了服務這麼廣大的用戶,在開發流程上也採取了 Large Scale Scrum 的方式(這部分可參考 TECHPULSE 議程)來管理這麼龐大的團隊,目前也正積極找 FrontendServer-SideQA AutomationQA 的工程師,若您對於更詳細的介紹大家可以參考 Recruitment Day 的影片喔!

LINE 電商團隊

電商已成為現代人不可或缺的一部份,在本次的議程中很詳細地透過不同的例子(母親節、送禮優惠…)來解釋在 LINE 電商服務中的不同使用情境,讓大家可以更快速的了解透過 LINE 來購買相關東西時的好處以及可用性。

接著再透過大家常見的 LINE Point 點數回饋來解釋從 LINE SHOPPING 導購服務中所延伸的整體架構流程,讓大家了解到為了整體的延展性與維護性需要透過怎樣的設計才能夠達到。

而在電商這麼大的團隊中也與其他團隊一樣,是透過 Scrum 的方式來管理與交付產品,除了有效管理交付內容之外,也可以讓團隊成員以最有效的方式來完成產品內容。

當然團隊裡不可少的 code review 與內部分享會都會有,透過這些流程讓大家在更了解不同成員的思路之外,也能讓團隊中有更多的交流來有效的促進產品的活力!

QA 工程團隊

開場 Richard 帶大家了解 Quality Assurance(QA) 以及 Quality Control(QC) 的差別,很多時候會覺得當產品(服務)要上線前只要讓 QA 測完後就可以上線,而若在上線前的階段才做測試,往往所遇到的問題以及付出的代價都會相對高許多。

而在 LINE Taiwan QA 部門這邊為了確保整體服務的品質,會在專案早期就參與計劃定製,與 Developer、Design、Planner…等等不同部門的角色一起討論整個流程,協助訂定不同的 Scenario 讓初期的討論可以更加完整。

而在開發階段時,QA 同仁則會開始建立許多不同情境的測試案例,同時也與 developer 討論相關情境與測試自動化的相關問題,讓 QA 的同仁可以有更好的切入點找出問題,同時也透過自動化讓整體作業更加順暢。

同時 QA 團隊除了建置自動化流程外,也會打造 CI/CD 輔助優化整體流程。我們透過自動化讓我們獲得了不少的好處。更多精彩內容也歡迎各位參閱影片內容。

若您對於優化提升品質與以及自動化工程等等的工作內容有興趣的話歡迎參考以下職缺,目前也正如火如荼地找尋優秀人才!

結論

在一年一度 COSCUP 的活動與每一位開發者交流都讓讓我們同仁收穫非常多,感受到開源同伴們的熱情參與,如果你也想參與開源專案的開發,不妨參考 LINE GitHub 中的專案,從發送一個增加功能的 Pull Request 開始,抑或是從修改、整理文件內容,我們也都很歡迎你勇敢跨出第一步來一起加入開源行列喔!

那我們就下次見!

活動小結

立即加入「LINE 開發者官方社群」官方帳號,就能收到第一手 Meetup 活動,或與開發者計畫有關的最新消息的推播通知。▼

「LINE 開發者官方社群」官方帳號 ID:@line_tw_dev

關於「LINE 開發社群計畫」

LINE 今年年初在台灣啟動「LINE 開發社群計畫」,將長期投入人力與資源在台灣舉辦對內對外、線上線下的開發者社群聚會、徵才日、開發者大會等,已經舉辦 30 場以上的活動。歡迎讀者們能夠持續回來察看最新的狀況。詳情請看:

留言

這個網誌中的熱門文章

COSCUP 2024 徵稿辦法 / COSCUP 2024 Call for Proposals

COSCUP 2024 Call for Proposals: Until 9th, May Submit Your Proposals HERE! 今年 COSCUP 一如往常,徵求各式各樣不同的 Open Source 相關稿件。請於 05 月 09 日(AoE) 前投稿,徵稿主題可參考本頁下方各議程軌資訊。 請注意,每場議程長度預設為 30 分鐘 ,惟部分議程軌開放其他議程長度,會在報名表單第二頁選填。 為了增添 COSCUP 的國際能見度,今年所有入選稿件希望都可以提供中英文版雙語資訊。徵稿階段,您可先以自己偏好的語言準備演講或撰寫 CfP 稿件。 提醒您,COSCUP 是一個倡導開放的研討會,所有演講將錄影並以創用 YouTube CC 姓名標示-相同方式分享 4.0 釋出。如果您的演講有任何不能錄影或不願以此條款釋出的狀況,請務必於投稿表單上註明。 We are looking for talks in several open-source related areas, please submit your proposal before May 09th, 2024 (AoE, Anywhere on Earth) . The theme for submissions can be referenced from the information on various tracks at the bottom of this page. Please note that the length of each agenda is preset to 30 minutes, only the specific tracks are open to other agenda lengths for selection, which will be filled in on the second page of the registration form. To make it more accessible for international audiences, we kindly request CFP information to be provided in both Chinese and

Designers in Tech- Open Source Design Workshop

關於工作坊 今年在COSCUP(Conference for Open Source Coders, Users Promoters)將協同國際團隊 Superbloom(以人為本出發幫助設計更具包容性和開放性的國際非營利組織)舉辦Designers in Tech- Open Source Design Workshop工作坊,此工作坊是專門為希望對社會做出正面貢獻的設計師所設計的,我們將邀起您以設計師的姿態,在科技人為主的世界裡舞擺出專屬於你的開源貢獻。 設計,如果共享後會有怎樣的可能性?開源設計為另一種合作模式,結合「共同協作」,讓人們可以自由地存取、使用、修改和分享設計資源來達到共同設計的目的。這次的工作坊試圖透過一個公開、透明、無國界的網路平台Github,讓設計師有機會參與平日以工程師為主的平台,並在上面做出生平第一次的開源設計貢獻,重新定義開源貢獻與設計的可能。 我們相信藉由設計師的參與可以優化現有以工程師、開發者為重的開源生態。通過設計師將專案納入更多的可及性和包容性。活動主旨在帶領設計師學習Github平台操作,進而可自行為開源專案進行貢獻。我們致力於賦能設計師開源專案貢獻力,摒除藩籬,打破開源僅為程式開發是唯一有價值貢獻的迷思。 我們將以「設計思考」思維出發並結合Superbloom的「使用者研究」個案來帶領工作坊,進一步在GitHub上挑選出3個專案做出貢獻:去中心化的移動網絡瀏覽器( Ceno Browser )、事實查核( Co-Facts )、通訊軟體( Session )。全程手把手引導教學如何以設計師的身份在GitHub上做出貢獻,提供全面的支援。在工作坊結束後,參與者能更加了解開源設計及在開源專案自行進行協作。 誰應該參加這個工作坊? 我們的工作坊對於UI/UX、平面設計師都相當歡迎 誰將帶領這個工作坊? Eriol Fox:Eriol擁有10年以上的設計工作經驗,從營利性企業開始,後來轉向非政府組織和開源軟件組織。他們曾參與涉及可持續食品系統、和平建設和危機應對技術的複雜問題。Eriol目前在Simply Secure工作,從事設計、研究、開源和技術項目。 Eriol是紐卡斯爾大學Open Lab的兼職資助博士研究員,他研究設計師如何參與以人道主義和人權為重點的開源軟件項目。

什麼是MySQL?

什麼是 MySQL ? MySQL 是世界上最受歡迎的開源資料庫。根據 DB-Engines 的資料, MySQL 是第二大最受歡迎的資料庫,僅次於 Oracle 資料庫 。 MySQL 為許多使用量最大的應用系統提供支援,包括 Facebook 、 Twitter 、 Netflix 、 Uber 、 Airbnb 、 Shopify 和 Booking.com 。 由於 MySQL 是開源的,因此它包含了超過 25 年來與使用者密切合作開發的許多功能。因此,您最喜歡的應用系統或程式設計語言很可能受到 MySQL 資料庫的支援。 MySQL 的優勢 MySQL 快速、可靠、可擴展且易於使用。它最初是為了快速處理大型資料庫而開發的,並且多年來一直在要求苛刻的生產環境中使用。 儘管 MySQL 在不斷發展中,但它提供了一組豐富而有用的功能。 MySQL 的連接性、速度和安全性使其非常適合使用互聯網上的資料庫。 MySQL 的主要優勢包括 ·        易用性: 開發人員可以在幾分鐘內安裝 MySQL ,並且資料庫易於管理。 ·        可靠性: MySQL 是最成熟和使用最廣泛的資料庫之一。 25 年來,它已經在各種場景中進行了測試,包括世界上許多最大的公司。由於其可靠性,組織依賴 MySQL 來運行關鍵業務應用系統。 ·        可擴展性: MySQL 可以擴展以滿足使用量最大的應用系統的需求。 MySQL 的原生複製架構使 Facebook 等組織能夠擴展應用系統以支援數十億使用者。 ·        性能: MySQL HeatWave   比其他資料庫服務更快、更便宜 ,正如多個標準行業基準測試所證明的那樣,包括 TPC-H 、 TPC-DS 和 CH- benCHmark 。 ·        高可用性: MySQL 提供了一整套原生的、完全集成的複製技術,可實現高可用性和災難恢復。對於業務關鍵型應用系統,為了滿足服務水準協定 (SLA) 承諾,客戶可以實現 RPO = 0 (零資料遺失 ) RTO = 數秒內(自動故障轉移) ·        安全性: 資料 安全 需要保護並遵守行業和政府法規,包括《歐盟通用資料保護條例》、《支付卡行業資料安全標準》、《健康保