Career advice

Practical guides for a Hong Kong career

Curated writing from operators, recruiters, and HR leaders — written for people building real careers in HK.

← Career advice

Latest Posts

【發財立品】品牌1+1
Advice Columnist

【發財立品】品牌1+1

之前同大家曾經提到品牌與品牌之間是可以配合,互補不足或者是取兩者之長短而產生化學反應………

Dart vs JavaScript vs TypeScript
Advice Columnist

Dart vs JavaScript vs TypeScript

隨著Flutter受到開發者的重視,Google於2011年推出的Dart又重新進入大家關注的視野之內,不過除了Flutter以外,其實Google的開發者早在2016年也推出過Angular Dart,讓開發者以Dart開發網站應用,不過由於Angular Dart對比TypeScript版Angular文本長期不足,因此沒有引起太多關注。Google推出Flutter,可以說為大家對Dart的信心注入了一劑强心針,大家又重新開始關注這個已有8年歷史的程式語言。 本文想介紹的是,就是到底Dart有何特色?與JavaScript比較,又有何優劣?由於TypeScript開始於前端日漸盛行,我們亦可以趁機比較一下三種語言的異同。 應用範圍(Application) 有讀過上一篇Web Technology為何征服世界的朋友,應該已經知道JavaScript跟TypeScript已經可以在網頁、伺服器、智能電話、IOT、人工智能等範疇落地生根,Dart呢?托Flutter的發展,Dart已相當適合同時於網頁、伺服器、智能電話等範圍作開發,這一點與JavaScript已不相上下。不過Dart與JavaScript的最大分別,在於Dart本身可以有三種方法運行:分別是編譯為JavaScript(Compiled To JavaScript)、由Dart VM獨立運行(Standalone By Dart VM)、AOT編譯為機械碼(Ahead-of-time compiled to machine code). 而JavaScript現時最流行的做法,都是以Node運行JavaScript。Node運行JavaScript時,會將JavaScript轉變為機械碼(Machine Code),再運行機械碼。亦是因此Node JS的運行速度比其他動態語言如Python、Ruby等都較快。而Flutter所採用的,就是第三種方法,先編譯為機械碼(AOT Compilation)再在智能電話運行,因此大家可能聽過Flutter無需JS Bridge的原因,亦是由於早已編譯為機械碼,所以無需一個額外的JS Bridge再作轉譯。   React Native寫成的手機程式結構如下: Flutter寫成的手機程式結講則如下: 基本運行 理解了Dart、JavaScript、TypeScript各自的應用範圍,就以三種語言都寫一個簡單的hello world為例: JavaScript…

給軟件開發人員的社交小貼士
Advice Columnist

給軟件開發人員的社交小貼士

大眾對軟件開發人員普遍的既定印象不外乎害羞、「書蟲」,這也是科技界一直揮之不去的問題。這得「感謝」現在的媒體把科技人才們與渴求社會認可(尤其在追求女性方面)的奇怪角色連繫。在這種影響之下,讓數千上萬的軟件開發人員被標籤為有社交困難、不出家門的「書蟲」。 幸好除了這些常見的誤解以外,過去數年誕生的新世代年輕,且充滿魅力的電腦專才讓我們揭開了科技界的神秘面紗,展露真實的一面。馬克‧朱克伯格、安德魯‧梅森和皮特‧凱撒摩爾便是當中的佼佼者,您可以形容他們為成功並富有個人魅力的程式編寫員,但絕對不是害羞。當我們看到這群軟件工程師正在世界舞台上發光發亮,便明白我們要改變既有的觀念,停止再把開發人員和厭惡的內向者連繫在一起。 以軟件工程師的身分建立人際關係 當下次再有人在您身上加上「反社會」標籤的時候,跟他們解釋那只是個荒謬的誤解吧。只有很少數的人知道要成為一個成功的開發人員和得到一份高薪厚職的工作,是需要與他人良好地溝通,還有持續地證明自己的專業能力才能做到。 透過與科技人員們合作和舉辦DrinkEntrepreneurs,GetLinks明白人際關係對開發人員有多重要。因此我們準備了以下六個已被認證的社交小貼士給每位軟件工程師,助您展開仕途: 1. 不要把社交聯誼置諸腦後 大部分人在需要某些事或物件的時候才會開始擔憂自己是否認識一些「正確」的人,但是純粹為了個人利益去與專業人士建立人際關係並不是一個很好的想法。與其聚焦於別人能對您有怎樣的幫助,不妨想想您如何能成為這個科技社群中具有價值的一員。 永遠不要以利用別人為目的去參與任何聯誼活動。建立專業人士間的人際網絡是在於成為一個大群體的一分子,為其帶來價值。   2. 準備好展示您的作品 軟件工程需要實際的技巧和知識,以及專業資格。一味吹噓自己的代碼行,卻無法展示任何作品,這只是不設實際。 在您開始建立任何人際網絡前,先花少許時間去創建一個專業、精心設計的作品集。雖然建立網站,更新作品集,運作部落格會花費掉不少時間,但請相信我們 – 人們會以不一樣的方式去對待您這一個井然有序、實事實幹的專才。把自己當成專家一般,不要害怕向他人展現您的才能。 真實例子:我們的一個開發人員也曾經歷過找不到工作的艱苦時刻,所以他集中透幫助朋友和家人去建立自己的作品集。不久之後,他便能展出一些令人驚訝的作品,讓他在大型企業中求得一份工作。 3. 設立一個專業的電郵地址和印製名片 儘管名片在現今社會被普遍認為毫無價值,企業家在會面、會議和貿易展這些場合依然會用到它們。為自己準備一疊名片,與其他的開發人員互相交換吧! 專業貼士:避免包括您的個人電郵地址,如[email protected]。如果您能負擔得了印製名片,那您該有足夠的資金去開立個人化的電郵地址。 4. 尋找聯誼活動 只要您懂得使用互聯網瀏覽器,尋找合適的活動相信不是一件困難的事。Meetup.com、Eventbrite和Facebook的Developer Circles等都是GetLinks十分推薦的網站,而我們舉辦的DrinkEntrepreneurs也是相當值得留意的活動。 假如您手頭比較緊絀,無法參加一些專業的商業會議(一張入場券可能需要過千元),您可以選擇一些小型的地區性活動。您可以出席一些志同道合的人之間的聚會,討論現今趨勢,與彼此交流意見和科技相關的論壇及小組,參加各類講座還有工作坊。這些地方都充滿着對科技抱有熱誠的人。 專業貼士:如果您在社交和待人接物方面遇到困難,這本由Dale Carneige所著的「How to…