資料請求
お問い合わせ

icon-facebook-bicon-twitter-b

JavaScriptとVue.jsの専門性の背景には、子ども時代の独学プログラミング経験がある〜フロントエンドエンジニア・TJ EppersonのTRUSTDOCK転職インタビュー(後編)〜

エンジニア

更新日: 2021/05/21

目次

    TRUSTDOCKの3人目のエンジニアは、TJ Eppersonです。(2020年6月)彼は面接のときから「JavaScriptとVue.jsには自信があります!」と話していました。一方で、経理と物流の経験があったりと、エンジニア以外の経験を持っています。

    今回はCOOの菊池をインタビュアーとして、TJのエンジニア歴を辿ってもらいます。また、働きはじめて間もないにも関わらず、「ビジネスサイドの要望を受け止めてくれる」開発姿勢についても聞いてみました。

    ●話し手

    pasted image 0 (7)

    株式会社TRUSTDOCK フロントエンドエンジニア  TJ Epperson

    学生時代に小企業向けの戦略立案会社を設立し、その後はドイツ企業で経理と物流業に1年間従事する。大学卒業後、2015年に広島市の会社で会社管理ソフトウェアを開発すると同時に、データ分析の資格を取得。2019年からはクリプトカレンシー分析のスタートアップで、JavaScriptベースのシステムの開発の経験を積んだ。2020年TRUSTDOCKにフロントエンドエンジニアとして入社し、今に至る。

    ●インタビュアー

    pasted image 0 (8)

    株式会社TRUSTDOCK 取締役COO 菊池 梓

    2016年にシェアリングエコノミー業界へのブロックチェーン技術の活用として、本人確認・デジタルアイデンティティを実装、後に本人確認サービス部分を「TRUSTDOCK」としてサービス化し、独立。

    TRUSTDOCKでは、業務執行の責任者として、営業支援・プロダクト開発内容の策定・オペレーション関連の顧客折衝・海外事業・海外技術調査等を行なっている。OpenID Foundation Japan KYCワーキンググループ ポリシーチームリーダー。

    pasted image 0 (9)

    JavaScriptの魅力は「簡単にはじめられる」けれど、深めるには専門的な知識が必要になる複雑さ

    菊池:TJさんが「JavaScriptとVue.jsには自信があります!」と面接で話していたことが印象に残っています。これまでどんな開発歴を辿っているんでしょうか?

    TJ:私のプログラミングのバックグラウンドは、12歳のときにVisual Basicをはじめた頃からの趣味にあります。16歳の頃には、ゲームを改造するためにC++を少し学び、その数年後にはゲームやWindowsアプリケーションを開発するためにC#に手を出しました。

    菊池:独学でプログラミング言語を学んでいたんですね。

    TJ:スタートはソフトウェア開発の正式な教育ではなかったですね。でも、コーディングキャンプに参加したこともあります。3ヶ月間閉じ込められましたよ(笑)。そこで一気にJavaScript、React、Vue、Express、SQL、NoSQL、TDD、デプロイメントを学びました。

    菊池:短期間でスキルを積み上げたんですね。

    TJ:コーディングキャンプの18人のクラスの中から、一番最初に採用していただきました。この時に、「スキルを習得するスピードが早い」という才能があるのかもしれないと気付きました。これまでは独学や自分の興味のために開発言語を学んでいたので、他のひとと比べたことがなかったんですよね。

    菊池:周りのひとより習得のスピードが早いと自信もつきますよね。自己評価ではなく、他者評価を得たことにもなりますから。

    TJ:そうですね。1日16時間以上の時間を費やしていたこともあり、私は開発が好きだし向いていることがわかりました。

    菊池:面接のときに「JavaScriptとVue.jsには自信があります!」と話していたことが印象に残っています。

    TJ:JavaScriptは好きですね。JavaScriptは信じられないほど簡単に飛び込める反面、専門的な知識がないと複雑な部分を理解できないことが多い点が好きなんです。shallow cloneとdeep cloneの違い、"true + true + true === 3 "がなぜ真なのか、なぜ物事を[object Object]かundefinedで表現するのか、などを考えたり、理解するのが好きです。

    菊池:独学で学びはじめることができて、さらに深めるには自分だけの知識では不可能。TJさんの開発歴と一致していますね。

    TJ:確かにそうですね。言われてみて気がつきました。closure、currying、event loopなどの概念も面白いですよ。フレームワークは、JavaScriptに力を与えてくれる素晴らしいものです。フレームワークのおかげで、フロントエンドで使っていたJavaScriptがバックエンドでも使えて、フルスタック開発が信じられないほど直感的で簡単になります。

    pasted image 0 (10)

    エンジニアの重要な仕事のひとつは、「ビジネスサイドが意思決定しやすいコミュニケーション」である

    菊池:TJさんには、JavaScriptでカメラを動かしての写真を撮影するの部分をお願いしていますね。

    TJ:いまの仕事はJavaScriptの経験が活かせてうれしいです。

    菊池:ビジネスサイドとしては大変ありがたいと思っています。それに、技術的負債の解消やリファクタリングを実施するタイミングと、リリースに向けて機能実装を進めるタイミングをうまく使い分けてもらえているんです。入社してすぐのエンジニアは特に、すべてコードを書き直したくなったりしませんか?

    TJ:エンジニアがコードベースを見て、リファクタリングやリライトが可能だと感じるのはよくあることですよね。でも、私はリファクタリングやソフトウェア開発の問題に対処するために、ビジネスサイドの開発への要望を保留にしたことはありません。

    菊池:その理由は、何か過去に経験があったからですか?

    TJ:確かに私のビジネスのバックグラウンドを振り返ると、同様の状況に対処した経験があります。別のコードベースでは1日でつくれたはずの機能を実装するのに2週間かかったなどがあります。

    菊池:そういった開発の遅延はよく起きるものですが、どうすれば防げるのでしょうか?

    TJ:最初のキーポイントはコミュニケーションです。ビジネスサイドは、開発の詳細に常に気づけているわけではありませんし、関与しているわけでもありません。だから、両者の間には活発なコミュニケーションが重要になります。

    菊池:ビジネスサイドはビジネスのプロフェッショナルであって、開発のプロではないですよね。

    TJ:そうです。エンジニアもビジネスサイドの人間の性質を理解する必要がありますね。だから、エンジニアからビジネスサイドとのコミュニケーションを活発に行うべきです。それは例えば「技術的な負債に対処しない限り、機能開発は苦しいものである」だったり、「負債は時間が経つにつれて指数関数的に増加し続ける」ことだったりします。

    菊池:技術的な負債を放置しておくとどうなるかをエンジニアから教えてもらえれば、開発に資金と時間をどう投資するかを考えられますね。

    TJ:エンジニアはビジネスサイドが意思決定しやすい情報を提供すると、開発のスピードも質も高められると考えています。

    pasted image 0 (11)

    「エンジニア以外の経験」が、ビジネスサイドの事情を理解する糧になっている

    TJ:2つ目のキーポイントは信頼関係です。例えばTRUSTDOCKではCTOの荘野さんが 「リファクタリングにはこれくらいの時間をください」と言ったときに、ビジネス側はそのリクエストを理解して協力できるか。これが鍵になります。

    菊池:ビジネスサイドは顧客の要望を直接受けています。いわば、顧客と開発サイドとの板挟みになることがありますよね。

    TJ:そうなんです。ビジネスサイドにとって「弊社のエンジニアはビジネスの事情を理解してくれている。だからその提案は正当なものだ」と思っている。これが信頼関係がある状態と言えます。

    菊池:自分をわかってくれているひとの提案であれば、受け入れやすいですよね。

    TJ:エンジニアサイドは開発環境や技術レベルから開発のスケジュールを、ビジネスサイドは顧客の要望や締め切りをオープンに話し、双方が納得のいく開発スケジュールを見つけることが大切ですね。

    菊池:どちらも「一方的に事情を押し付けられた」と思うと、その関係は長く続かないですね。

    TJ:お互いが「事情を考慮してくれた」と思える信頼関係が、エンジニアサイドとビジネスサイドの理想的な関係です。私はエンジニアの他にも経理や物流の経験もあります。こういった「エンジニア以外の経験」を生かして、TRUSTDOCKのエンジニアサイドとビジネスサイドの関係をつくっていこうと思います。

    編集後記

    TRUSTDOCKのフロントエンドエンジニア、TJのインタビューを前編と後編にわけてお伝えしました。

    「独学からはじまった開発歴」と聞くと職人気質が強い印象もありますが、TJはビジネスサイドの考えも持っているエンジニアであることがわかりました。今後もTRUSTDOCKのメンバーがどういった考え方、経歴、志向を持っているか詳細にお伝えします。

    前編、後編ともにご覧いただき、ありがとうございました!

     

    自由な組み合わせで
    最適な設計を実現できます
    KYCに特化したプロ集団に、まずはご相談ください

    サービス資料ダウンロード お問い合わせ