Vol.133」に掲載された記事を許諾を受けて転載しています。クライアントエンジニアからサーバエンジニアへの挑戦キャラクターをコーディネートするソーシャルサービスを広く展開するココネ。Twins』をリリースした。人気の『ポケコロ』シリーズにWeb3やNFTなどの新しい技術要素を採り入れたブロックチェーンサービス版と言える。サービスリリースにサーバサイドで携わった岡田大介氏に、実装した新技術の詳細や環境構築の経緯などをお伺いした。━━自己紹介をお願いします。前職では業務用複合機のソフトウェアエンジニアとして組み込み系の開発をしていました。ココネには7年前に入社しました。Twins』の開発に加わり、自分では新しい領域となるサーバエンジニアに挑戦しています。Twins』とはどんなアプリケーションですか?『ポケコロ』シリーズのブロックチェーンサービス版とも言えます。『ポケコロ』とは、2011年にココネがリリースした人気のアプリケーション(アバターサービス)で、かわいいキャラクターの着せ替えや、部屋のコーディネートなどでコミュニケーションを楽しむものです。ココネ本社では初のNFTを採り入れたサービスとなります。Twins』は2022年11月29日からグローバルでサービスを開始しました。ちなみに「PKCL」は「ポケコロ(Pokecolo)」から来ており、サービスのテーマとなる「Pop・Kawaii・Cool・Lovely」の意味もあります。Twins』では『ポケコロツイン』同様にコーディネートを楽しむだけでなく、コーディネートしたセットをNFT化できるのが特徴です。キャラクター育成やアイテム収集ができるサービスはほかにもありますが、サービスが終了してしまうとキャラクターやアイテムにアクセスできなくなることがあります。NFT化することで永久に残すことが可能になるだけでなく、所有者や資産価値が明確となり、ココネグループが運営するNFTマーケットプレイス『Jellyme』で販売することも可能となります。デジタルアセットの最先端を行くサービスです。Twins』ではどのようなことをしましたか?グローバル展開に向けた多言語化のしくみ(現状では英語のみだが、将来は増える見込み)やインフラ周辺の環境構築や整備などです。Twins』では東南アジア諸国で展開するため、国を超えて多くのお客様にご利用いただくことを想定して環境を整えています。Acceleratorで柔軟にスケールしやすくするしくみを導入しています。Twins』が使うブロックチェーンについて教えてください。Network(MOOI)』を使います。2022年6月末に正式リリースされたばかりのものです。『MOOI』のトランザクションはデジタルワールドでの取引に適した速度を持っているものの、普段の遊び方においては遅延を発生させないために、お客様が普段の着せ替えなどの機能を使うときには直接アプリケーションのサーバにアクセスするしくみを構築しています。これにより、ブロックチェーンに起こりがちな遅延はありません。ブロックチェーンを使うのはアイテムをNFT化するときなどです。━━ココネのサーバ開発における取り組みはありますか?Go言語(golang)でサーバを構築していることでしょうか。ココネでは2019年ごろより『ポケコロツイン』のサーバ開発からGo言語を採用しています。それまでのココネのサーバ開発はJava言語がメインでしたが、現在はGo言語とKotlinを用いてサーバ開発を行っております。Java言語メインのサーバエンジニアも新たにGo言語を学ぶことになったのですが、エンジニア同士で共有を進める風土があるので、ココネのサーバエンジニア全体の知識レベルが上がっていますね。一般的にGo言語はJavaほど自由ではないと言いますか、決まった書き方をする必要があると言われています。裏を返せばシンプルに記述できるということです。比較的早く習得でき、慣れれば扱いやすい言語だと思います。Go言語なら基本的な機能だけでWebサーバを構築することができます。自分にとってもGo言語は使い慣れた言語でしたし、短いコードで済むので、(Webサーバ構築では)フレームワークは使いませんでした。それにGo言語だと並列処理が可能で実行が速いなどサーバの性能を出しやすいというメリットもあります。━━クライアントエンジニアだったのにサーバエンジニアに志願したとのことですが、ジョブチェンジをしてみてどうですか?最初は多少の不安もありました。入社時から「(サーバ側も)やってみたい」という気持ちはあったものの、長らくクライアント側の開発をしていたので抵抗もありました。Twins』に移るのをきっかけにジョブチェンジに挑戦することにしました。いえ、これまでレベルを高めてきたのに、またレベル1から再出発するような心境です。自分よりずっと若手のエンジニアに間違いを指摘されてへこんだこともあります(笑)。ココネでは、勉強会や定例のエンジニア全体ミーティング、Slackを通じて情報交換をしているので、誰が何に詳しいかわかりやすく、技術のキャッチアップがしやすいです。━━ココネのどんなところが気に入っていますか?最初は多少の不安もありました。入社時から「(サーバ側も)やってみたい」という気持ちはあったものの、長らくクライアント側の開発をしていたので抵抗もありました。Twins』に人間関係が比較的フラットで、上司や部下でも意見を言いやすいところです。Twins』の開発でもそうなのですが、新しい技術を積極的に採り入れているので、エンジニアとして最先端に関わることができます。自分が望めばどんどん新しいことに挑戦できる環境です。チャレンジ精神がある人には向いていると思います。Native、C++、C#、TypeScript、そして2022年からはサーバサイドでGo言語、MongoDB、Redisを習得してきました。技術スタックは結構幅広く持てるようになったと自負していますが、まだまだスキルアップしていきたいですね。将来クライアント側とサーバ側のどちらに進むとしても、お客様寄りの目線でサービスをよくしていければと考えています。22CategoryエンジニアインタビューTagアプリ開発インタビューエンジニアブロックチェーンcoconeweb3一緒に働くエンジニアを募集していますココネのエンジニア採用はこちら感性をカタチに。株式会社%d人のブロガーが「いいね」をつけました。