見出し画像

社員インタビュー 〜Vol.3 iOSエンジニア 井門龍己〜

こんにちは、株式会社Amazia採用担当の渡邉です。
今回は社員インタビュー第3弾としてサービス開発部でiOSエンジニアを担当している井門さんに当社のことや開発業務について話を伺いました。

プロフィール:
新卒で友人と会社を立ち上げ、エンジニアとしてのキャリアをスタート。その後、会社をたたむこととなり転職、約4年ほど受託開発会社で勤務。
Amaziaには2017年9月に入社、iOSアプリ開発業務を担当。
エンジニア歴は約12年。
趣味は筋トレとビデオゲーム(最近はスプラトゥーン)

プログラミングをはじめたきっかけは?

もともとパソコンを操作するのが好きだったんですよね。その延長線で、プログラミングをはじめたのがきっかけですかね。学生時代は高専に進学したので、CだったりC++の基本情報的な範囲については学校の授業で学びました。ただ、ほぼ独学で学んだところが大きいです。

パソコン部に所属はしていたのでシューティングゲームをつくったりしながら実用的なことは先輩に教えてもらったりして実際に何かをつくりながら、手を動かしながら学んできた面のほうが経験としては多いですかね。

高専卒業後

高専を卒業してからしばらくして、友人から「アプリをつくって起業してみないか?」という誘いがあって会社をつくってみました。犬の飼い主向けのSNSアプリやクイズゲームアプリを開発していました。これがエンジニアとしてのスタートになりますね。

当時は、アプリ開発も初めてでしたし、Macbookを触るのもはじめてという環境から開発業務をスタートしました。ただ、何かしらのUIを触る経験というのは高専生のときにやってきたので、自分のなかである程度すぐにキャッチアップはできて、割とすぐにアプリ開発には着手できました。

スマホをもっていたのもiPhoneでしたし、消費者に近いサービスを開発したいというこだわりは自分のなかでどこかにあったので、アプリ開発は自分に合っているという発見にもなりました。

受託開発会社へ1回目の転職

起業した会社は結果として2年ほどでたたむことにはなったのですが、そのタイミングで知り合いの社長に声を掛けていただき、次は受諾開発会社で4年ほど働きました。前職は全体で20名くらいの会社でした。

年2~3件の受諾開発をうけるなかで、アプリの開発案件もあり、そのなかでSwiftも実務として取り入れるようになってきました。

ー当時はどんなサービス開発の案件を担当されていたんですか?


音楽配信サービスだったり、インディーズ書籍の配信審査システムだったりと幅広い案件開発をしていました。配信審査システムではRailsでサーバーサイド開発をやったりもしていたこともありました。

2017年9月Amazia入社

前職は結局一人でやっている環境が多くて、コードレビューなどもなかったのでエンジニアとしては我流になっているのは自分のなかですごく気にはなっていたんですよね。受諾案件も落ち着いてきたタイミングで転職を考えるようになりました。

SIerなどの大組織よりかは、上司とも気軽に相談できる雰囲気だったり、開発に集中できる環境を探していたところ、Amaziaをみつけて入社を決めました。

入社してみて複数のエンジニアで大きなサービスをつくっている環境はすごくよかったですし、当時いた先輩iOSエンジニアのプログラミングスタイルは今の自分のやり方を確立するぐらい影響を受けましたね。

ーこれまでやってきて印象に残っている開発はありますか?

そうですね、Objective-CからSwiftに完全移行させられたことはこれまで自分が”マンガBANG!”に携わってきて印象に残っていますし、誇れることの一つかなと思います。

かなり膨大な作業でしたし、ノウハウがあって効率的に上手くやり遂げられたというよりどちらかというと”根性”でやりきった部分かなと思います。入社した当時、”マンガBANG!”全体機能の半分はObjective-Cで記述されていました。それを約3年ほど時間をかけて少しずつ対応していきましたね。今はすべてSwiftで記述できるので、開発やメンテナンスのしやすさもかなり向上できていますね。

作品統合

直近、”マンガBANG!"に「作品統合」という大きな機能追加を行ったのですがこちらの対応は大変でしたね。既存のサービスで既に動いているものを活かしつつ、ユーザー/管理者双方で使いやすいような設計をしていくことの難易度が高かったですね。

作品統合とは:
フリーミアムコーナーでは、配信モデル(メダル、チャージ)でそれぞれ異なるデータを登録する社内オペレーションになっていました。同じ作品に関して二重にデータを登録する運用負荷と繁雑さが問題となっていました。

また、ユーザーさんからの利用視点でも配信モデル間で閲覧履歴の情報が保存されないので、分かりづらいシステムになってしまっていました。

そのため配信モデル(メダル、チャージ)に加えて、チャージの変形としての話売りモデル(話レンタル)を追加しつつ、作品データとしては一つのデータに集約する作品統合対応を2022年に実施しました。

マンガ作品の閲覧処理はシステム上でもややこしい面が多く、全パターンを網羅しつつ、通信が失敗した際のリカバリーも考慮しながら設計をしていきました。

作品統合機能は2022年の夏に大きなトラブルもなく無事にリリースすることができました。リリース後はアプリの使い勝手も向上することができたので大変ながらも実装したかいがあったなと感じています。

Amaziaの働きやすさってどんなところだと思いますか?

まず、代表の佐久間さんとCTOの江口さんと気軽に相談できるところが働きやすさのひとつかなと思います。リリースについても相談しやすくスケジュール調整をしてくれたり、組織の上層の人とも話しができる点はいいなと思います。

当初は、感染症対策として急遽開始された在宅勤務ですが今は制度も整備がされてリモートで働きやすい環境も整っていることも良い点ですかね。
エンジニアチームは毎朝10:30~Daily Scrumを行っていて、気軽に相談できる、コミュニケーションをとれる場をつくれるようにしています。

今後、挑戦していきたいことは?

"マンガBANG!"については広告SDKのABテストを実装していきたいですね。
特集だったり書影の効果をシステム上で評価できるようにしたり、最適化の仕組みを作ってみたいですね。

例えば、動画配信サービスとかだとサムネイルに何を表示するとか、切り取り方とかをユーザープロファイルに応じてダイナミックに変えていく取り組みをしているものもいくつかあったりするのでやってみたいなぁと考えています。

リコメンデーションや自動生成の開発はやってみたい領域の一つではあります。

あとは、新規アプリの立ち上げにもチャレンジしてみたいですね。非同期処理はCombineを取り入れてみたりと令和最新版の技術領域でつくってみたいなと考えています。

最後に、どんな人がAmaziaと合っていると思いますか?

そうですね、
・自社開発で長いスパンで開発に関わりたい人
・新しい技術を導入して取り入れたい人
であれば当社はいい環境だと思います。

コードの書き捨てではなく、長期間でアップデートしていきたいというエンジニアの方であればマッチするかと思います。


株式会社Amaziaでは新しいメンバーを積極的に採用しています!詳しくは採用ページをご覧ください!