Gg8qflrwtjnszmk47ht0

林佑興 | Arxing

用我的專業與天馬行空來改變這個世界
小時候立志成為一名發明家,興趣是發明物品或是改造原本不方便的的東西讓它們更加好用,大學時接觸了資訊工程,開始了我的Coding人生,發明與改造的天賦移植到了寫程式上,閒暇之餘的興趣是開發開源工具程式開源外掛開源函式庫,開發的IDE Plugin已累積超過10000次的下載,落實用自己的專業與天馬行空的想法來幫助其他開發者及人們,幫助這個世界更美好。

我勇於挑戰難題,從不畏懼探索不熟悉的專業領域,因此除了主要專業 Android以外,對於其它領域也都有涉略。

技能


 Android

  • AndroidX
  • Language
    • Java
    • Kotlin
  • Asynchronous Programming
    • Thread
    • AsyncTask
    • Handler
    • RxJava
    • Kotlin Coroutine
  • MVVM
    • DataBinding
    • ViewModel
    • Lifecycle
    • LiveData
  • Network
    • OkHttp
    • Retrofit
    • Socket
    • WebSocket
  • Data Persistent
    • Shared Preferences
    • Realm
    • SQLite
  • Gradle
    • Groovy
    • Gradle Plugin
  • Device Interface
    •  Bluetooth
    •  USB Manager
    • Serial Port
  • Third-Party Service
    •  Facebook
    •  YouTube
    •  AWS S3
    •  Google
    •  Firebase
  • Push Notification
    •  FCM
    • Baidu
    • Xiaomi
    • Huawei
    • JPush
  • Event Tracking
    • Matomo
    • Rollbar

 



 Android Reverse

  • Code tracking
  • Code hooking
  • Packet tracking
  • Packet modification
  • APK resignation
  • Xposed
    • Xposed module
  • Tools
    • apktool
    • jarsigner
    • apksigner
    • jd-gui
    • dex2jar
    • jadx
    • Charles
    • Virtual Xposed


 Flutter

  • Widgets
    • StatefulWidget
    • StatelessWidget
    • Form
    • FormFields
  • MVVM/Bloc
    • ObservableFields
    • Stream
    • Sink
    • RxDart
    • Future
  • Flutter Packages Development
  • Third-Party Packages
    • json_annotation 
    • json_serializable 
    • named_mode 
    • dartpoet
    • xson 
    • code_builder 
    • source_gen 
    • build_runner 
    • args 
    • dio 
    • html_parser 
    • yaml
  • Native Communication
    • Method Channel
  • Push Notification
    •  FCM
    • Baidu
    • Xiaomi
    • Huawei
    • JPush



 Dart

  • RxDart
  • Command Line Application
  • Backend
    • shelf
    • shelf_router
  • Dart Packages Development
  • Third-Party Packages
    • json_annotation
    • json_serializable
    • named_mode
    • dartpoet
    • xson
    • code_builder
    • source_gen
    • build_runner
    • args
    • dio
    • html_parser
    • yaml 

 C#

  • GUI Application
    • WPF
    • Windows Form
  • Unity


 Laravel

  • Restful API
  • Eloquent ORM
  • MySQL/MariaDB
  • Postman
  • Composer

 


 Telegram Bot



 DevOps

  •  Git
  •  Jenkins
  •  Gradle



Tools

                                

學歷

勤益科技大學, 學士學位, 資訊工程系, 2011 ~ 2016

八皇后問題輔助解題程式

使用C語言撰寫,在主控台程式上運用GUI互動來輔助八皇后問題解題者瞭解解題的演算法過程。

國立秀水高工, 電機科, 2008 ~ 2011

工作經歷

雷特遊戲有限公司, Senior Android Developer, 2020/08 ~ 2020/12

  • Game platform Android SDK development 
  • Game platform Unity SDK development 
  • Team tools: Scrum/Phabricator/Jira/Slack

遊戲平台Android SDK(Android/Kotlin)

撰寫讓Android遊戲開發商能串接我方平台服務的SDK,功能如註冊/登入/登出/儲值/使用者資料。


遊戲平台Unity SDK(Unity/C#)

撰寫讓Unity遊戲開發商能串接我方平台服務的SDK,功能同Android SDK。


興晨國際有限公司, Android Developer, 2018/09 ~ 2020/06

  • Android project development 
  • Flutter project development 
  • Intellij-Based Plugin development 
  • Dart utility development 
  • Telegram bot development 
  • Laravel development 
  • AWS service integration 
  • Team tools: GitHub issues/Telegram

馬甲包APP(Android/Java & Flutter)

以大量生產能上架到市場的APP(期貨資訊、股票資訊、基金資訊)為主,面向中國客戶群,上架至百度/華為/360/應用寶/OPPO/小米/安智...等中國平台以引導客戶流量。


馬甲包APP自動生成環境(Java)

以通用模板APP為基準,設計出資源包並以替換資源的方式來大量生成馬甲包,主要程式為以Java撰寫成的Command Line Application,佈署在雲端並與後台對接,達到可直接從後台輸入資源包後,程式即運作自動替換資源、編譯、打包最後發佈APK到Storage Server上,實現無需寫到一行Code即可自動生成APP的效果。

金流監測APP(Android/Java & Xposed)

與其他金流平台對接,以分析收款簡訊的方式來檢測使用者所綁定的各銀行金流動向,並自動回報至後台紀錄。


影音平台(Flutter)

以Flutter撰寫而成的影音平台,擁有會員、觀看紀錄、收藏影片、推薦影片、影片分類...等功能。

塞席爾商索特股份有限公司, Android工程師, 2017/06 ~ 2018/06

  • Android project development 
  • AWS service integration 
  • Team tools: Trello/Telegram

運動賽事APP(Android/Java)

與後端對接API,呈現各種運動賽事的即時資訊。

耀達電腦股份有限公司, 軟體工程師, 2015/07 ~ 2017/03

  • Android project development 
  • WPF project development 
  • Loading balance and MariaDB cluster machine building

撲克牌辨識APP(Android/Java)

面試測驗題目,以Android Camera完成撲克牌的辨識功能,測驗門檻為單張辨識100ms內,辨識成功率需達90%。
以OpenCV輔助大量複雜運算,最後成品實作出同時多張辨識並且達標。

3D打地鼠遊戲APP(Unity3D/C#)

面試測驗的第二道題目,以Android完成打地鼠遊戲,並且需使用到相機、陀螺儀、震動等功能。
以Unity3D搭配C#來撰寫,遊戲資源皆為免費資源,其中曾因頻繁刪除/新增角色物件而造成效能低下,最後是以角色池的方式來解。

楊正中議員APP(Android/Java)

為楊正中議員的里民服務打造的資訊型APP。

醫療照護APP(Android/Java)

使用者分為護士及病患,對於病患是提醒透析時程及向護士回報的功能,對於護士則是記錄病患及訂購醫療用具的功能。

視訊/語音聊天Library(Android/Java & iOS/Objective-C & WebRTC)

以WebRTC協定來實作擁有視訊及語音聊天功能的Library,且為雙平台,Android部分以Java撰寫,iOS部分以Objective-C撰寫。

台灣彩券APP(Android/Java)

與後端串接,為給台灣彩券使用者的APP,擁有產生投注QRCode、查看中獎資訊、店家資訊、優惠...等功能。

台灣彩券POS系統(WPF/C#.Net & Linux)

以微軟的WPF框架撰寫,並且使用C#,為給台灣彩券商家使用的POS系統,擁有報表、開獎、投注...等功能。

作品集

八皇后問題輔助解題程式

Projects 01 00@2x
使用C語言撰寫的主控台應用程式,用於輔助八皇后問題解題者瞭解解題演算法,程式中顯示了棋盤、棋盤索引、皇后位置及皇后領地,且分為了手動模式及自動模式,在手動模式中透過鍵盤互動可自行移動游標、設置皇后、移除皇后及重置棋盤,在自動模式中,程式將會自動演示解題過程並找到八皇后問題的全部92組非獨立解。
下載連結(若有跑版情形請將主控台應用程式改為等寬字型如Consolas)

撲克牌辨識APP

第一間公司面試的測驗題目,主要使用OpenCV做大量運算,使用到了灰階、二值、邊緣檢測、輪廓檢測、三角函數、二維座標系統…等。


如圖所示,可以正確定位撲克牌的角落(即使撲克牌有被擋住或不完整的出現)並抓取每張撲克牌的牌身從而判斷出撲克牌的數字並顯示。

Paragraph image 04 00@2x
Paragraph image 04 01@2x

台灣彩券


Projects 01 00@2x
Projects 01 01@2x
Projects 01 02@2x

Android/Java Packages

MultipleStateView 

一個可以預先給定多個畫面並讓畫面綁定狀態,並以狀態去切換各種畫面的自訂View。

FileHelper

改善Javapoet使用Builder Pattern造成物件生成後,無法再改動內部屬性的不方便的擴充庫。

LazyAttr

在刻劃自訂View時,需要定義Attr時總要手動到資源檔內定義,非常的不方便,於是著手寫了這個Library,LazyAttr透過APT來讓使用者在View內直接新增屬性,並且只要加上Annotation定義型態、名稱、預設值即可自動在資源檔內生成對應程式碼。

Chart

手刻圖表元件,基於SurfaceView,提供顯示圖表、觸碰反饋、自適應尺寸...等功能。

AxCore

本人撰寫的一個開發App時會用到的各種庫,包含網路連接/Mvvm框架/JSON解析/頁面跳轉管理/頁面跳轉動畫/資料庫/各種自訂View...等。

IDE Plugin

Projects 01 00@2x

Dart Fast Imports


這是一個專門為Flutter/Dart開發者而生的Plugin,可安裝於Android Studio/Intellij IDEA,解決在開發Dart時總是得滾動視窗到最上面才能import的問題,大大地提升了開發效率。

Chinese Converter

這是一個可以一個熱鍵快速轉換繁/簡體中文的Plugin,可安裝於所有Intellij-Based的IDE,如Android Studio/Intellij IDEA/CLion/GoLand/AppCode/PhpStorm/PyStorm/Rider/RubyMine/WebStorm...等,相較於其他同樣功能的Plugin更加快速簡易使用,而且不需另開任何視窗,大大提升開發效率。

Dart Packages

Projects 01 00@2x

dartpoet

Dart Pub 

Source Code

這是一個協助build_runner開發者來取代code_builder的library,能用易維護、更加可讀及結構化的程式碼來產生Dart程式碼,靈感源自於鼎鼎大名的Javapoet


named_mode

Dart Pub

Source Code

這是一個用來轉換各種命名模式的library,如蛇底式、小駝峰式、大駝峰式、駝峰蛇底式…等。


trident

Dart Pub

Source Code

這是一個透過簡單的annotation標記就能生成Restful API的library,靈感源自於鼎鼎大名的Retrofit


telebot

Dart Pub

Source Code

這是一個封裝Telegram Bot的所有功能的library,內建了Telegram聊天機器人Server介面,只需一行程式碼就可以啟動聊天機器人Server,並撰寫自己的邏輯。


xson

Dart Pub

Source Code

可以將Json實際轉換為對應Json element的library,靈感源自於鼎鼎大名的Gson


xson_builder

Dart Pub

Source Code

與xson搭配使用,可解析Json並生成Dart Bean class。


messages

Dart Pub

Source Code

破除字串資源架構只有一維的限制,將其擴充為樹狀組織,並實作當找不到資源時使用預設資源的功能的library。


useful_extension

Dart Pub

Source Code

綜合自己接觸過各語言的經驗,以extension的方式來為Dart擴充各種不方便的語法。


type_translator

Dart Pub

Source Code

實作型態的轉換,如int to double, string to double甚至是自訂類別的轉換。


xfile

Dart Pub

Source Code

由於Dart本身提供的File並沒有那麼好用,於是仿照Java的概念擴充了原有的File。


xargs

Dart Pub

Source Code

簡易型的args庫。