看板 Soft_Job 關於我們 聯絡資訊
* For English version, please see Google Translate, which has been reviewed. 公司名稱: 個人 職缺: * Golang 後端測試工程師 * Golang 後端開發工程師 主要工作事項: * 參加每週一次線上會議 * 相關系統開發 薪資: * 沒有,基本上是來交朋友的。 任務介紹: 大家好,我是 Pichu ,這個專案基本上是和 PTT APP 相關的任務,不過因為目前還沒 確定 PTT APP 後面會採用哪個版本的後端,因此我也沒辦法保證目前的製作結果會被 PTT 官方變成最後採用版本,不過我會試著說服幾個合作中的小站以及我們家 Formosa BBS 讓實作的心力和資源不會被浪費這樣。 就像是 Gossiping 不等於整個 PTT, PTT 不等於整個 BBS 一樣,雖然說目前 PTT APP 小組大部分原先要處理的問題都是 Gossiping 上的問題,不過我個人認為整體 BBS 的程式碼也夠久了,應該要整個大修了,不然遲早我們會面臨名為技術債的報復。 目前 BBS 需處理的問題由輕重緩急排列如下: 1. 介面/商業邏輯/資料庫的程式碼混在一起,造成調整使用者體驗上以及使用者介面 上調整困難。 2. 程式碼缺乏註解,可讀性極低。 3. 原先的程式碼完全沒有 testing code. 4. 程式碼完全沒有 benchmark 機制,修改架構仰賴設計者的威望而非科學證據。 5. 大部分的架構仍然使用 32 位元的時間表示方式,這會導致 2038 問題。 6. 密碼仍採用基於 DES 的雜湊方式,換句話說,強度不足。 7. 過度仰賴共享記憶體的設計造成伺服器分散困難。 8. 索引檔儲存方式彈性不足,不易新增新欄位。 9. 轉信機制死亡已久。 10. 站內訊息 (水球)、站內信無法透過手機即時通知使用者。 11. Current PTT 程式碼尚不支援 IPv6. 12. 站內文章仍然使用 Big-5 儲存,不支援 emoji 或是台羅拼音。 13. 不支援圖片上傳、音訊或是視訊通訊。 而目前我提出的解決方案是重新設計後端介面 我們初期將會得到一個新的基於 HTTP 的後端介面, PTT APP 中台或者是行動 APP 的 開發夥伴可以透過這個介面來存取 BBS 的資料庫。 在開發中有別以往 BBS 的開發流程,新的流程我會先將需要的功能寫成文字文件並且 提出討論,一段時間後開立 GitHub ISSUE 進行實作。 因此可以確保新的程式碼是有文件以及清晰易懂的測試案例的,避免重蹈覆轍。 目前我們已經完成驗證帳號、取得看板(baord)列表、取得文章列表以及取得文章內容 等功能,我們還需要持續完成新增推文(push/recommend)、新增文章、編輯我的最愛等等 的功能。 但是我個人有個額外的請求,因為有先前在 Soft_Job 上提到的「東京都新冠肺炎對策 網站(https://stopcovid19.metro.tokyo.lg.jp/)」的經驗,我還是希望能做到是由社群 的多數人共同完成這個專案,而不是如同多數在台灣的開源專案,是由固定幾個「大神」 來完成的。 原則上軟體專案人數的增加並不會增加開發效率,反而還會降低效率,但是開發人數過 少的專案反而會有公車指數(bus factor)過低的問題,也就是少數幾個人離開專案就會導 致專案進度停擺或是沒有人能繼續維護。 因此我會希望邀請有興趣共同開發的工程師加入,大約一週兩到四個小時的時間就可以 了,而我自己扮演的角色會傾向專案管理的角色,準確有效率的分配任務給貢獻者們,同 時能確保工作進度和程式碼品質。這對我個人而言也算是具挑戰性的任務。 注意事項: * 這個專案並不會存取現有 PTT 使用者個資 * 有興趣者可透過站內信聯絡 職缺能力經歷要求: 基本需求 / * 基本的 Shell 使用能力 ** 會下 git clone ** 會下 go build 額外需求 / * 讀過 "database/sql", "go-sql-driver/mysql" 兩個套件的原始碼 =========== 2021/01/20 更新: 目前有站內信給我的我有回信了,如果沒收到的話請再寄一次這樣。 如果還是找不到我的話可以從 join.g0v.tw 到 g0v 的 slack 找到我 ============ 2021/01/26 更新: 這之前有站內信給我的我有回信了。 然後第一週的影片有透過聯絡用的信箱轉寄給大家了,怕信被送入垃圾郵件中,如果 沒收到標題為 [BBS] BBS 後端實作聯絡 的Email的話請再用站內信和我確認一下。 -- 此篇文章以 CC BY-SA 4.0 發表。 咖啡是一種豆漿, 茶是一種蔬菜湯。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.25.83.63 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1610976994.A.2C8.html
single4565: 拼喔 01/18 21:58
teemocogs: 本人看好這個專案與發展方向 01/18 22:04
teemocogs: 凡於本篇文章"推"文留言正面鼓勵推文,本人於1/24前 01/18 22:08
teemocogs: 取本篇前100名正面"推"文者ID贈予100批幣(稅後) 01/18 22:09
abccbaandy: 看到無薪本來想噓,突然發現這好像真的是開源的...XD 01/18 22:10
TohmaMiyuki: 推,加油 o_ob 01/18 22:11
popmentos: 是這個套件嗎https://github.com/go-sql-driver/mysql 01/18 22:12
lampajoyoung: 推 01/18 22:13
ownmylife: 推! 01/18 22:13
popmentos: 請問 "database/sql" 是指哪一個? 01/18 22:13
wulouise: go不熟...可惜.. 01/18 22:14
jasonliao89: 推! 01/18 22:23
liyuyi: 推 01/18 22:23
ioiolo: 推 讚讚 覺得有趣 01/18 22:25
dd05b70: 推,覺得是個可以學習的好專案 01/18 22:26
kyrie77: 推 01/18 22:27
popmentos: 喔 應該是這個 https://golang.org/src/database/sql/ 01/18 22:28
兩個都是,不過主要是看過別人的 interface 和架構作法 因為我們接下來會需要實作類似的東西。
sameil: 推 01/18 22:29
bill0205: 推 go .... pass 01/18 22:32
s780429s: 開源給推好了 01/18 22:32
jixian: 推 01/18 22:33
shter: 推 open source,希望未來前端能更便利存取內容 01/18 22:34
vencil: 推 01/18 22:36
henryhao: 推 01/18 22:37
james80351: 推推 加油! 01/18 22:39
Mtcat: 1 01/18 22:40
BusterButter: 推 01/18 22:44
GORD: 推 01/18 22:45
acoo: 推啦 01/18 22:46
OrangeFuck: 能力不足推推 01/18 22:48
nicehorse06: 推推 加油 01/18 22:49
panda04056: 推推 01/18 22:49
fishloveeat: 推 已站內! 01/18 22:50
xx78826: 加油 推一個 01/18 22:54
y800122155: 支持 01/18 22:57
LeOniD0728: 太厲害了 給推 01/18 22:58
MARGHT: 推推 水啦 01/18 22:58
hyhs: 推 01/18 23:04
zero11995: 推 01/18 23:07
greenhua: 推推! 01/18 23:08
FireKingStar: 推 01/18 23:09
online135: 本來要噓的 看了發現不對XD 01/18 23:11
q970105: 推 01/18 23:11
bbbboy: 想加推! 01/18 23:14
HotShotBB: 加油 這很厲害 01/18 23:15
jack931018: 推大工程 01/18 23:16
loadingN: 我覺得可以 01/18 23:17
hahaha84777: 推推 01/18 23:20
headd: 支持 01/18 23:21
bboybighead2: 推 大家加油 01/18 23:21
takusa: 推推推!! 01/18 23:23
covera: 推 01/18 23:25
jimjim951357: 推 01/18 23:27
easybaby: Push 01/18 23:28
derekjj: 推,好猛的感覺 01/18 23:33
miku3920: 加油!我相信你們可以的!改變PTT吧! 01/18 23:35
dj533kevin: 給個推,可惜我沒寫過go後端,不然蠻有意思的 01/18 23:35
enthos: 推,不會go。 01/18 23:37
kevin76630: 讚喔 01/18 23:38
vi000246: 很猛 其實這花的心力 都可以再做個dcard賺錢了 01/18 23:40
holishing: 好像很厲害推個 01/18 23:42
boy00114: 推 01/18 23:44
papayasoup: 推 01/18 23:44
pkmilk: 推 01/18 23:45
ukuk666888: 推推 01/18 23:46
reichien: 推 01/18 23:46
Csongs: 有興趣 01/18 23:46
hduek153: 真的是重寫一個大型網站的感覺了 01/18 23:48
devilkool: 推 可惜我不熟golang 01/18 23:48
ManOfSteel: 推 01/18 23:54
t510599: 推推 01/18 23:55
sky919247: 推 01/18 23:56
e12518166339: 可惜不會go如果有需要python跟c的部分我可以幫忙喔 01/18 23:58
e12518166339: ,推一個 01/18 23:58
Lansqior: 有興趣 01/18 23:59
c88tm: 推個,但是可讀性低跟缺乏註解沒有關連 01/19 00:03
alex1290: 推推 可惜不會go 01/19 00:04
summerleaves: 能力不足 只能幫推 01/19 00:06
turo: 推 01/19 00:06
Quor: 推文!不是碼農純圍觀 01/19 00:07
mroops: 推 01/19 00:07
tfhs: 推 01/19 00:08
jasonwung: 好酷喔 01/19 00:09
WTFCN: 推推,有點興趣,可以最近比較忙,年後再看看>< 01/19 00:09
empennage98: 推推 01/19 00:09
WTFCN: 惜 01/19 00:09
eopXD: 必推! 01/19 00:10
sexdriver: 推,加油 希望有朝一日能相助 01/19 00:15
dream1124: 請問你的意思是這套成品有機會取代目前的PTT嗎? 01/19 00:15
dream1124: PTT APP 是行動app 還是系統重寫的專案? 01/19 00:16
dream1124: 若是行動的話,原來等他們發展完後會決定後端用什麼喔? 01/19 00:17
原本的 PTT 短期內應該是不會取代,不過這個是和 PTT APP 專案同期進行的專案
Jockey66666: 有點意思 01/19 00:19
shorty696820: 推 鄉民們重要的基礎建設 01/19 00:19
SRmoisTEH: 推 01/19 00:21
phoenix82326: 推好方向打專案 01/19 00:35
CKNTUErnie: 推 01/19 00:36
kled: 推 01/19 00:38
swordefest: 推 有點興趣但只會python c++, sql只會很簡單的XD 01/19 00:39
TitanEric: 推推 有點心動但不會go qq 01/19 00:41
duck10704: 推個 01/19 00:42
fstk1213: 推 01/19 00:50
SunFox58: 推 01/19 00:53
sophie0629: 推 01/19 00:59
benben994: 推,酷喔 01/19 00:59
yu90342: 加油加油!! 也寄站內信給你了~ 01/19 01:02
ukjhsa: 推 01/19 01:02
brianwu1201: 推 01/19 01:10
skyHuan: 推 01/19 01:17
konoe: 推 01/19 01:17
inyl1027: 推 01/19 01:18
oppi: 推推 01/19 01:23
lerdor: 推 01/19 01:32
shasharon: 推 01/19 01:46
voyager520: 看不懂 幫推 01/19 01:55
ZooseWu: 前幾天才開始關注這個專案 推推 加油 01/19 01:56
yoche2000: 推 大工程 01/19 02:09
L1ON: 交朋友 01/19 02:11
TFnight: 推 不過可讀性跟註解不一定相關吧? 01/19 02:15
uopsdod: 推 01/19 02:16
zz860619: 推 01/19 02:40
asleisureto: 推 01/19 03:30
TakiDog: 官方的Ptt app / 除了原有連接方式,要另一組API提供App 01/19 03:31
TakiDog: 更穩定方便的連接方式,樓上*n的問題 01/19 03:31
TakiDog: 可惜不會Go,我只會拿go刷題QQ 01/19 03:31
roy3550681: 開源推 可惜只會Python/C++不會go 01/19 04:11
WaterLengend: 推 01/19 04:25
discipile: 推 01/19 05:27
p880011: 推 01/19 06:39
jobintan: 有些好些你們的app會走native app還是pwa? 01/19 07:06
win30221: 推 01/19 07:43
bcew: 推 01/19 08:05
kaiyure: 推 01/19 08:07
goldie: 推 01/19 08:16
HelloPPT: 推推 01/19 08:18
saphy: 推 01/19 08:35
final01: 噓購 01/19 08:40
deeeplove: Pitt MoPTT都可以上傳照片啊 01/19 08:41
spicysushi: 推 01/19 08:50
MudHan: 推 01/19 08:55
Zwubber: 神 推 01/19 09:10
jlc7191: 推~ 01/19 09:17
Harlequin727: 推 01/19 09:23
rodion: 推 建議加入大數據偵測並自動阻擋五毛ID功能 01/19 09:35
sherlockxx: 絕讚 01/19 09:39
sam455205: 推 01/19 09:41
saitoh: x86-64上的linux time_t已經是64 bit了啊 01/19 10:00
saitoh: DES跟雜湊兩個是不一樣的東西 是不是搞混了 01/19 10:00
saitoh: 然後做出來跟另外一個低卡有甚麼不一樣? 01/19 10:01
但是目前 PTT 的原始碼 time_t 還是用 32 bit 在跑 DES 那個問題詳見 crypt(3) 做出來的東西會不會和 Dcard 一樣的問題要取決於經營者和社群。
wangm4a1: 開源就非社群?覺得奇怪 01/19 10:10
atobela: 加油, ptt在進化的路上了 01/19 10:14
ihero: 推 01/19 10:52
leon1757tw: 推 01/19 11:09
brianhsu: 不會 go...orz 01/19 11:09
marc47: 有點想,但是最近忙到翻,有空再說了 01/19 11:31
TUTOTO: 推 01/19 11:59
makao: 推一個 01/19 12:00
shooter555: 開源嗎 大BBS時代又要重新來臨了嗎 01/19 12:04
Burwei: 推 好酷 01/19 12:08
smart0eddie: 推 01/19 12:18
appleway: 推! 01/19 12:23
iamgp: 推,要很佛心 01/19 12:26
DarkIllusion: 支持 可惜我不是寫golang的 01/19 12:28
soccer103: 推 01/19 12:29
d135799: 推~想玩~ 01/19 12:31
ainori520: 只能推了! 01/19 12:37
gowellplayer: 加油! 很有意義 01/19 12:40
xup6y3ru04: 推 01/19 12:52
kasimEnix: 推 01/19 12:52
azzc1031: 無薪真的要很有愛才行了xd 01/19 12:58
smily134: 推 01/19 13:07
nick938332: 推 已站內~ 01/19 13:22
mike54115: 推 01/19 13:36
gary850503: 推 01/19 13:50
s890494: 推 01/19 14:07
moszap: 推 01/19 14:28
paint: 很有意義的專案 01/19 14:35
converse: 推 反正一定很醜,記得出API還有社交挖礦 01/19 14:46
ZSZ1210: 推 01/19 15:05
crepperman: 推 01/19 15:15
rog43: 滿有趣的 推一個 01/19 15:21
y956403: 有趣推 可惜不會go 01/19 15:54
andrew5106: 如果直接找那些app作者合作的話,會不會比較快阿? 01/19 16:05
andrew5106: 不過也要他們願意接受開源就是了 01/19 16:05
tennyleaz: 有FOSS有推 01/19 16:09
jackflu: 酷~ 01/19 16:14
justben: 推 可以先募一筆 Donation 再依照開源貢獻 分$啊 01/19 16:25
herrowui: 覺得有趣,推 01/19 16:34
DonkeyLiu: 推 01/19 17:10
harry830622: 推 01/19 17:28
mybluesky: 想試 01/19 17:54
naskate: 推 01/19 18:16
james852: 推 01/19 18:42
zxcasdjason1: 推 01/19 18:43
chuegou: 我只會git clone QQ 01/19 19:22
frank30941: Good for us 01/19 19:38
alen60212: 推 01/19 20:24
cha122977: 有目前的source code可以看嗎0.0 01/19 20:32
k20057: ya 01/19 20:44
bill20509: 推 想試試看 但太菜了.. 01/19 21:02
teemocogs: 以上所有推文ID已致贈100批幣(稅後)共177位合計19824P 01/19 21:37
jasonwung: 感謝樓上紅包 01/19 21:42
marc47: 可以參考這個專案,基本該有的東西都有了 01/19 21:51
bamdtrt: 能力不足, 只能幫推了 01/19 21:51
Truer: 能力不足,幫推 01/19 22:05
marc47: https://routinost.com 01/19 22:06
marc47: demo網站 01/19 22:06
justben: 新專案要不要 rust 一下 01/19 22:11
ADEMAIN: 推 01/19 22:27
tengod00: 推推 01/19 23:06
marc47: https://github.com/Azareal/Gosora 01/19 23:10
crepperman: 感謝紅包 01/19 23:34
g001613001: 加油 01/19 23:34
Tatum0119: 推 01/19 23:54
ppc: 推推 01/19 23:55
chuegou: 阿 找到了原來是這篇 感謝紅包 01/20 01:02
IMPOSSIBLEr: Golang可以學一下的,應該是未來驅勢 01/20 01:17
sean0430: 推! 01/20 01:26
a1813204: 推 加油 01/20 01:55
jason8607: 推 01/20 01:56
※ 編輯: pichubaby (114.25.83.63 臺灣), 01/20/2021 05:19:02
true0422: 已站內信,希望可以加入 01/20 09:19
benq: 推 excellent 01/20 09:37
crazyjamie: 現在開始學Golang不知道來不來得及參加專案 XD 01/20 11:51
popmentos: 應該來得及啊 這可以發展很久 以後如果恢復多個bbs站 01/20 12:27
popmentos: 那可以跨站備份 例如Boy-Girl跨站討論 然後各自有不同 01/20 12:28
popmentos: 的推薦演算法 01/20 12:28
jobintan: 用後端出JSON API先,再由各路前端工程師製作出不同版的 01/20 12:49
jobintan: 前端介面,good idea。 01/20 12:49
newjett0617: 推推 01/20 13:43
saitoh: 跨站轉信25年前就有了,走的還是標準protocol 01/20 14:01
saitoh: 但現在全部死光光只剩google group 01/20 14:02
popmentos: 以前是不是只有本文有轉 底下的推文也有轉信嗎? 01/20 14:51
popmentos: 我忘記以前是怎樣了 01/20 14:51
aeolus811tw: 認真說,別用MySQL,直接換PostgreSQL會比較好. 版權 01/20 15:28
aeolus811tw: 問題和支援性套件都比較穩定。 01/20 15:28
aeolus811tw: 還有用go的話會需要注意dependency management 有點 01/20 15:29
aeolus811tw: 鳥的問題 01/20 15:29
tw11509: 推 01/20 20:38
RoyalA: 推推 01/20 21:39
oscarchichun: push 01/21 00:10
sa0124: 推 01/21 00:42
Rm: 請問什麼時候會公佈團隊名單 01/21 08:43
目前應該不會有所謂的團隊名單,不過因為是開源專案,所以想知道目前的貢獻者名單等 等的在 GitHub 上面 repo 裡面會有記載。 倒是如果 Rm 有寄站內信的話,目前我這邊回信的名單中沒有你的 ID,所以可能寄丟了 之類的。
TSLu: 必須推 01/21 10:29
forsakesheep: 推,希望有天能看到PTT早日開放 01/21 12:36
Karlsland: 推 01/21 14:31
ccnancy: 推 01/21 20:27
newversion: 這是要結構性的重寫PTT system嗎? 01/21 21:09
newversion: File base->db big5->unicode 改動太大了 01/21 21:11
我認為 File 本身就是 DB 的一種形式,像是 git repo 本身也不一定利用到 RDBMS
g5637128: 推 01/21 22:22
Dueo9527: 退步 01/22 12:55
Dueo9527: 選字錯誤QQ 推!! 01/22 12:56
joy3252355: 純推 01/22 14:59
frank60116: 推,不知道有沒有在找UX相關的 01/22 19:41
PTT APP 有在找 UX,可以從 join.g0v.tw #ptt 聯絡
asadman1523: 推 01/23 00:33
paulshain04: 猛啊加油! 01/23 08:55
popmentos: 分段換行 連續推文 多行推文 這些問題說不定跟UX有關 01/23 12:17
popmentos: 不曉得類似這些由前端處理比較好 還是後端做比較好 01/23 12:20
allen501pc: Ptt儲存資料的方式,還是以純檔案的方式處理嗎?還是 01/23 14:15
allen501pc: 有加上DB的lock 機制?10幾年前維護過學校的BBS(Mapl 01/23 14:15
allen501pc: e體系),一想到要把這種File based的資料儲存方式, 01/23 14:15
allen501pc: 換成以Relational DB或是message queue的方式處理, 01/23 14:15
allen501pc: 就覺得工程浩大。 01/23 14:15
t520131412: 推推 01/23 14:39
ghost90331: 推推 01/23 21:49
superpandal: 我只負責使用就可以了 01/24 14:01
superpandal: 不過樓上一堆建議可以考慮摟 01/24 14:03
mrnegativetw: 推 01/24 20:50
friends29: 可惡 感覺好玩 可是沒碰過Go 01/24 20:59
※ 編輯: pichubaby (36.230.113.143 臺灣), 01/25/2021 16:41:21
snaketsai: 推推 01/25 20:46
j75689: 推,已寄信~ 01/26 15:06
※ 編輯: pichubaby (36.230.113.143 臺灣), 01/26/2021 16:06:48
SMMIT: 推 01/27 00:36
eeha8834: 推 01/28 02:47
luli0034: 推 01/29 08:14
os369510: 推 已站內 希望幫的上忙 02/03 10:24
sheep1129588: 推 有興趣 已站內 02/03 12:07
a82611141: 推 感覺好強 02/19 22:27