The Art of Readable Code && High Performance Comments

今天做了個相當勇敢的決定,讓我覺得需要在 blog 上留紀錄,說服五年後的自己 XD

城邦徵才頁面破版截圖

城邦徵才頁面破版,其中部份欄位文字重疊而無法閱讀。

參加 OSDC 時,偶然間與某 p 社換到名片。回家 social 後,發現對方正在徵才;既然我也在徵缺,稍微 handshake 下,試探是否能夠撮合,也是很合理的發展。就這麼到了城邦集團的人才招募系統,也開始了今天的驚異之旅。

隨便點了個職缺(註:職缺關閉後,連結可能會死掉),哇賽,破版成這樣有些離譜;頁面最底下還寫說支援 Chrome 勒。換成 Firefox 看,果然還是炸裂。現在這年代,要看到能在 Gecko + Webkit (Blink) 下都破版的網站可真不容易。

不過我身為優質 full stack web coder,當然反射打開 dev tool 然後檢查破版原因。哇塞,表中有表,我以為這寫法十年前就過時了;然後標籤運用失當(至少也用個 th),缺少表意的 id / class,甚至大量運用 inline CSS。我的老天爺啊,這作為 front-end 訓練的 refactor 範例,都稍嫌殘忍了,居然能上 production ….

沒關係,我溫良恭儉讓,我繼續跑流程;然後發現它們拿身份證號碼當用戶 id。這有什麼問題?丟了 Primary Key 就是丟個資,發個 RESTful GET request 往 /user/A123456789 被截到,公司依照新制個資法,就可以準備被罰款,這夠嚴重了吧(104 也是同樣狀況)。

剛註冊完就跟我說密碼錯誤…..

xkcd on Adobe password leak and their epic mistake on password ENCRYPTION instead of HASH

xkcd on Adobe password leak / epic mistake;
CC-BY-NC-2.5

好,我智勇雙全的發現「忘記密碼」這選項,又不恥下問的點了它,赫然發現「用戶密碼沒 hash」…. 去年 Adobe 協辦字謎大賽xkcd 諷刺圖如右,詳細解釋參考 nakedsecurity 此篇),想不到還有企業會中這種坑。

好吧,密碼長度被 truncate 在 12 個字元,但沒說明文字,沒 validation,沒 warning,這真是 UX 大失敗。但往好方面想,憑著智力和恥力,我終於登入平台了。

然後就是各種身家調查、reference check,企圖挖出各種個資、隱私。雖說我把自己的隱私看得很淡(事實上,預設 CC-BY-NC ),但不代表任何人有權介入我的生活;因為那可能是其他人的隱私,我不能代替他們拋棄權利。

除此之外,他們(城邦集團)也要求在招募人才或人力資源管理之目的範圍內,蒐集、處理、揭露、轉介一切所提供的個資。

相對來說,先進國家企業為了避免各種就業歧視,會避免(甚至被禁止)蒐集這些個人資料;更不用想去問兄弟姊妹這種明顯侵犯隱私的事了。但也因此,履歷與面談更專注於專業能力;而在被提問時,受聘者也能拿捏是否想要,又是否應該,提供哪些資訊。

我一直相信,企業有其精神;從任聘員工開始,最終傳達至顧客身上。當企業不重視員工(或應徵者)隱私,當評核流於形式,當以 cost down (與必然的品質降低) 作為 business model 的 key idea,後果如何可想而知。

最後為了保護親友與自身隱私,並結省填表時間,我決定停手,並聲明撤回授予該集團使用個資之權利。作為一個家裡蹲 (for now),我還真有種 >///< 希望五年後的自己回顧這篇文章時,還能認同這是個正確的決定。

也期待台灣企業能夠認清自己的本位,學會只取自己要的資料 / 資源,並盡力將它發揮到最好;擺脫追逐 possession,但不知 progression 的思維。

同場加映,我最近見過兩間公司要求填寫是否得過法定傳染病。撇開隱私議題(我認為這屬於個人隱私,公司無權要求)不談,你知道「水痘併發症」與「流感併發症」均屬第四類,而 H7N9 流感病毒屬第五類嗎?如果沒做檢驗,這問題基本是無法回答的。

註:我想這罪魁禍首應是城邦集團;但只要 p 社持續在其下運作,便要承擔這樣的因果。

發表迴響

分類

%d 位部落客按了讚: