秘銀架構師之被螢幕淹沒的男子

要 為 大家 介紹 的 是 Фрэнк。

Фрэнк.

「怎麼會走上工程師這條路?」

應該是高中時自己發掘的興趣吧!高一時考進科學班的物理組,原本也是和大家一樣乖乖念書,直到高一下參加國科會計畫,從科展及實驗中發現對工程領域的熱情。剛開始我對科展的主題沒什麼頭緒,後來在地科老師安排及牽線下,我和一個與研究黑洞的學長一起完成科展。研究過程中需要用跑一些基本的程式分析,才開始對這領域感興趣。不然以前對程式的瞭解僅停留在一些外掛程式上而已。也因此,我加入了電腦研究社,在學長們的帶領下對寫程式產生了更深的認識與興趣。

「第一個學的語言是?」

我第一個學的語言是 C 語言,是在高中的「生活科技課」接觸的。這門課的內容滿有趣的,上學期學做樂高機器人;下學期學程式語言。

「C 語言主要會用在哪?你覺得為甚麼學校會安排高中生第一個學的語言是它?」

因為 它 在 生活 中 應用 較為 廣泛 、 iOS 、 Android 的 , 都有 C。 的 執行 效率 平台 程式 入門 的 基礎 科目 學習。

「為什麼會選擇當一位網站後端工程師?上一份工作也是做網站後端相關的嗎?」

高中、大學時學的程式都以系統管理居多,也覺得伺服器背後的運作滿有趣的,也就繼續朝這方面鑽研。大學時期我有試著寫一些網頁前端的程式,不過可能因為我比較沒有美感、也比較沒有耐心修調設計細節,就覺得自己不適合網頁前端的工作。

「為什麼選擇寫 Python? 」

大約 在 2012 年 開始 接觸 Python。 其實 它 不算 很 新 的 語言 , 大約 在 90 年代 就 出現 了 , 只是 到 近 幾年 才 紅 起來 熱潮 外 , 可能 是 基金會 推廣 比較 賣力 吧 PSF (Python Software Foundation) , 會 在 各地 推廣 的 活動。 台灣 也 有 Python 的 活動 , 除了 一年一度 看到 的 應該 就 屬 PyLadies , 目前 主要 應該 在 台北 , 有 興趣 Python 的 女生 可以 參加。

Python 的 覺得 有 兩個 一個 寫 易懂 , 比較 貼近 道地 英文 的 寫法 , 因此 不管 是 之後 自己 回過頭 、 ; 另一個 優點 是 語法 比較 乾淨。 其實 寫 程式 只要 過 幾個月 再 回頭 看 , 常 會 忘記 當初 寫 什麼 , 但 Python 易懂 的 語法 回想 , 但 主要 還是 跟 寫 的 人 有關 就是了 , 語言 能 幫助 的 有限 , 適度 的 註解 也是 很 重要 的。

「如果用一件生活化的事情來比喻寫程式,你覺得寫程式對你來說像什麼?」

我覺得寫程式其實很像做料理,而且是研發新料理的那種。程式碼就像食譜,相同的程式碼和食譜可以得到相同的結果,但由誰來料理也很重要。根據需求不斷修改食譜,在修改的過程中,一個厲害的廚師可以透過直覺或經驗很快知道食譜有哪些缺漏,並快速進行改進,反覆驗證,確保按照食譜做出來的菜肴的味道是正確的,加上註解讓其他人可以很容易瞭解食譜的步驟,甚至容易進行改良。

就像 Мартин Фаулер (馬丁 · 福勒) 的 Refactoring (《重構 : 改善 既有 程式 的 設計》)) 教 讀者 如何 有 系統性 得 程式 中 也 講到 程式 的 壞 味道 」。

我覺得工程師就像廚師,專業分工並合力做好一道菜是很重要的,PM 就像大廚,每位工程師做好自己負責的部分,最後組合起來,將最完美的菜餚呈現給使用者,送上我們覺得最棒的產品。

「什麼時候開始接觸虛擬貨幣/區塊鏈的?」

大約在 2013 年左右吧!有同學開始在宿舍挖比特幣,當時因為還沒有很多人挖,只是把主機放著跑就可以賺錢,覺得這滿神奇的!後來就自己找資料研究,慢慢了解背後運作的技術。

「現在有買哪些幣?」

我目前都買一些比較大的幣種,以比特幣、以太幣、萊特幣為主,當然還有秘銀幣。

「當初為何會選擇加入秘銀?覺得作為一位工程師在秘銀工作最大的優點是?」

區塊 鏈 算是 滿 新 的 領域 , 加上 我 平常 就有 興趣 而且 有 在 關注。 下 透過 高中 同學 的 介紹 得知 , 當時 有 間 大 公司 offer , 但 覺得 這邊 應該 會 比較 有趣 和 有挑戰性 , 就 加入 秘 銀 了。

我 覺得 在 這邊 工作 最大 的 優點 是 , 可以 嘗試 不同 事情。 這邊 組織 不太 排斥 的 想法 , 同事 侷限 自己 互相 cover 的 感覺 讓人 很 安心 、 舒服。

「這半年來印象最深刻的事情?」

是 Lit 上 線 的 時候 吧! Lit 上 線 前 一個 禮拜 我 才 到職 , 要把 子 在 時間 內 做好 , 我 就 在 一個 禮拜 內 把 Lit 的 部署 流程 和 架構 弄好 了 , 連 我 自己 都 同事 們 的 超 緊湊 回到 大學 社團 很 開心。

「在 Lit/Vault 的建置經營中,覺得最困難的部份是什麼?」

Lit / Vault. 電子 錢包 , 重視 的 是 整體 架構 的 穩健 性 (Robustness) , 要 確保 使用者 的 提 領 跟 存放。 兩者 其 具 的 地方。

「為什麼你需要那麼多螢幕?」

Mac 雖然可以支援多桌面,但切換畫面很花時間。我偏向一台螢幕用來處理一件事,我目前的分配是:一台看流量、一台放瀏覽器處理雜事、一台轉成直的下指令及寫程式碼。

「個人嗜好/假日都在幹嘛?」

平常會去運動,像是打籃球、游泳、健身等。偶爾也會看書、寫寫程式碼、部落格文章。

「最喜歡的食物?平常的、公司的零食」

我除了紅豆、羊羹外其他大多都滿喜歡吃的!公司零食…

Ивонн: 停 , 我 知道 , 你 最 喜歡 「時間 販售」 的 代 餐 , 你 根本 天 都 在 喝 沒 在 吃飯 ==。 如果 說 Drain 是 多 力 多 , 那 你 應該 就是 時間 販 售 殺手 , 整箱 一半 都 你 喝 的 吧!

「用一種動物比喻自己?」

我覺得自己像貓頭鷹,都是夜行性動物,白天比較沒有精神,晚上才比較有活力。牠們行動前也都會先仔細觀察才真正行動,我的做事方式也比較偏好全盤考量後再實際執行。

「最近最想學習/努力的方向?」

我希望朝「軟體架構師」的方向前進。這個職位除了系統管理外,對程式碼也要有一定的深度與了解。不過這個職位通常在大公司才會有這種需求,小公司對我來說的價值在可以多方學習新事物。不過我還有很多要精進的地方,尤其是溝通能力。希望未來可以成功當個「軟體架構師」,成為較全面性的程式人才。

「未來的夢想是?」

短期內我滿希望嘗試遠端工作。這幾年因為美國灣區房租貴,越來越多這種工作型態出現,可以省下昂貴的租金,有的甚至會作為薪資回饋給員工,每半年會由公司出錢約在某個地點和同事見面順便員工旅遊。我覺得這工作型態滿特別的,應該也是趁年輕才能做的事情,希望有機會可以嘗試看看!

Знакомьтесь, Фрэнк: Back-end разработчик в MITH

Перевод Кристи Янг

На этой неделе мы познакомим вас с Фрэнком.

Фрэнк - внутренний разработчик в MITH. Обычно он спокойный, но ему есть чем поделиться, когда дело доходит до кодирования - о его проницательности и профессиональных знаниях.

"Why did you become a developer?"

Думаю, это был интерес, который я постепенно развил в старшей школе! Я получил квалификацию для группы физиков в классе естественных наук на первом курсе средней школы. Лишь во втором семестре первого курса я развил свою страсть к инженерии из научных проектов и экспериментов благодаря исследовательской стипендии для студентов колледжа NSC. Сначала я не был уверен в теме моего проекта, но профессор геолого-геофизических наук организовал меня объединиться с одним из старших классов, который занимался исследованиями черных дыр. Некоторый базовый анализ проекта был проведен с помощью кодирования, что пробудило мой интерес. До того, как это произошло, мои знания о кодировании ограничивались областями плагинов. По этой же причине я решил присоединиться к клубу компьютерных исследований, чтобы развивать свои знания и интерес к программированию.

"What was the first computer programming language that you've learned?"

Первый язык компьютерного программирования, который я выучил, - C, с которым я впервые столкнулся на курсе «Жизнь и технологии» в старшей школе. Это было действительно весело. В первом семестре мы построили роботов LEGO, а во втором - выучили язык программирования.

"What is C mostly used for? Why do you think it is the first computer programming language to learn for high schoolers?"

Думаю, у него более широкий спектр применения в жизни - от серверов до ядер операционных систем iOS и Android. Кроме того, его высокая эффективность и возможность работать на разных платформах - вот причины, по которым он является основой программирования.

"Why did you become a back-end developer? Was your previous position a back-end developer as well?"

В средней школе и колледже я в основном сосредоточился на системном управлении, когда дело доходит до программирования. Я считаю, что работа сервера чрезвычайно интригует, и решил глубже изучить эту область. Я пробовал некоторую внешнюю разработку в колледже, но я думаю, что мне не хватает эстетического чутья, а также терпения, и я не могу подробно разобраться в деталях дизайна - в основном это причина, по которой я не думаю, что я годен в качестве фронтенд-разработчик.

"Why did you choose to write Python?"

Я начал изучать Python в 2012 году. Python - не новый язык, как он появился в 90-х годах, но до недавнего времени не был таким известным. Я думаю, что внезапная популярность является результатом его легкости для понимания и тенденций в области анализа данных и искусственного интеллекта. PSE (Python Software Foundation) продвигает различные мероприятия по всему миру, многие из которых находятся на Тайване! Помимо ежегодных PyConTW и ежемесячных встреч, PyLadies довольно активно работают в Тайбэе, ориентируясь на девушек, заинтересованных в изучении Python.

Я думаю, что у Python есть два преимущества: во-первых, его легко понять при кодировании, поскольку он напоминает грамматику английского языка. Так что будь то мне, кому нужно было проверять свой собственный код или другим разработчикам, это легко понять. Во-вторых, у него более чистый синтаксис. Иногда, если вы вернетесь и снова посмотрите на написанные вами коды, вы склонны забыть то, что кодили. Однако синтаксис Python действительно помогает напомнить, что это было. Но все равно все сводится к разработчику. Язык может помочь в написании кода, поэтому правильные аннотации не менее важны.

"If you were to compare coding to one thing in life, what would it be?"

Я думаю, что программирование очень похоже на приготовление пищи, особенно когда требуется творческий подход для изобретения новых блюд. Ваши коды похожи на рецепт - хотя один и тот же код и рецепт дадут одинаковые результаты, повар / разработчик по-прежнему играет решающую роль. Рецепт будет постоянно изменяться в соответствии с требованиями. Во время такого процесса отличный повар может быстро определить, чего не хватает, основываясь на своем опыте и интуиции, таким образом, мгновенно изменить, проверить и убедиться, что кухня соответствует вкусу. Добавление аннотации может помочь другим понять этапы рецепта и упростить им дальнейшие изменения.

В статье Мартина Фаулера Refactoring он научил нас систематическому рефакторингу кода. Также упоминалось, как коды иногда «воняют». Я думаю, вы определенно можете сравнить разработчика с поваром.

Для создания хорошего блюда очень важны профессиональная специализация работы и сотрудничество. Шеф-поваром будет продакт-менеджер. Когда разработчики внесут свой вклад, лучшая кухня / конечный результат будут доставлены пользователям.

"When did you first start learning about blockchain and cryptocurrencies?"

Примерно в 2013 году! Мои одноклассники начали добывать биткойны в своем общежитии. Это было тогда, когда не так много людей занималось майнингом, и вы приобретете криптовалюту, если оставите свой компьютер включенным! Я подумал, что это волшебство, начал исследование и пришел к пониманию механизма, который поддерживает это.

"What tokens have you purchased?"

Я купил несколько более крупных криптовалют, в основном биткойн, Ethereum, Litecoin и, конечно же, MITH.

"Why did you join MITH? What would you consider the greatest benefit as a developer here at MITH?"

Блокчейн - это недавно разработанная область, которая меня интересует. Один из моих школьных друзей случайно познакомил меня с MITH. Хотя я получал и другие предложения от известных компаний, я думал, что присоединиться к MITH будет веселее и сложнее. И вот я здесь!

Я думаю, что самое большое преимущество - это возможность попробовать много разных вещей. Организационная структура относительно плоская, и новые идеи всегда приветствуются - вы можете высказаться в любое время. Коллеги никогда не ограничиваются своей профессией и всегда готовы помочь друг другу. Это очень безопасно и утешительно.

"Looking back at the past half a year at MITH, what first came to mind?"

Думаю, это было, когда Lit собирался выпустить. Я приехал сюда за неделю до релиза. Мы хотели продемонстрировать лучшее из продукта, и все задерживались в офисе допоздна, надеясь реализовать все функции в течение недели. Поэтому я был очень удивлен, когда мне действительно удалось завершить развертывание фреймворка до этого. Тесная командная работа, которую мы вернули мне в студенческие клубы, и я рада.

"What was the hardest part in deploying Lit and Vault?"

Lit и Vault - разные вещи. Lit - это скорее продукт социальной сети, и пользователи могут внезапно напасть на него. Именно тогда масштабируемость сервера стала крайне важной, чтобы обеспечить возможность обработки трафика.

Сейф - это, по сути, цифровой кошелек, общая надежность его структуры очень важна, потому что она гарантирует, что вывод и депозит не будут ошибочными. У этих двух продуктов есть свои проблемы и трудности при разработке.

"Why do you need so many screens?"

Хотя Mac поддерживает несколько рабочих столов, переключение между ними действительно требует времени. Мне нравится выполнять по одной задаче на каждом экране. Вот как я классифицирую свои экраны: один для мониторинга трафика, один для разных вещей, выполняемых в моем браузере, и третий для кодирования и выполнения команд.

"What do you do on weekends or in your spare time?"

Я занимаюсь спортом, например, баскетболом, плаванием и тренировками. Иногда я читаю книги и сообщения в блогах, а также пишу код.

"What's your favorite food? What snack do you munch on in the office?"

Я не люблю ничего, кроме красной фасоли и сладких тортов из красной фасоли. Что касается офисных закусок…

Ивонн: Остановись прямо здесь. Я знаю, вам нравится замена еды от 15minvendor. По сути, вы пьете его каждый день, а он заменяет вашу настоящую еду. Если Drain - терминатор Doritos, вы, по сути, терминатор 15minvendor. Вы выпили как минимум половину!

"If you were an animal, what would you be?"

Я, наверное, сова, ночное животное. Я устал днем, но полон энергии ночью. Они склонны внимательно наблюдать, прежде чем действовать - и это я. Я выполняю только после того, как полностью рассмотрю все результаты.

"What would you like to learn or to work on recently?"

Я хотел стать архитектором программного обеспечения. Помимо управления системой, эта должность также требует определенного уровня понимания кодирования. Однако такое открытие позиций есть практически только у крупных компаний.

Для меня ценность стартапов заключается в возможности узнавать новое. Я все еще думаю, что мне нужно многому научиться, особенно навыки общения. Я надеюсь, что смогу стать архитектором программного обеспечения и разносторонним талантом.

"What's your dream?"

В краткосрочной перспективе хочу попробовать поработать удаленно. Этот стиль работы получил распространение из-за увеличения арендной платы в районе залива, Калифорния. Некоторые компании даже награждают своего сотрудника в виде компенсации или устраивают встречу, чтобы собрать всех коллег, а также командировку сотрудника. Я думаю, что это особенное дело, и это то, что нужно попробовать, когда вы молоды. Я надеюсь, что у меня будет возможность попробовать это!