システム導入のための意思決定サイト

新・ITエンジニア図鑑

メルカリは「3週間で1つ作る」、サーバーサイドエンジニアの重責

2017/10/17 島田優子=日経SYSTEMS
森側真一=日経SYSTEMS

  • このエントリーをはてなブックマークに追加

サーバー側アプリケーションの開発に特化するサーバーサイドエンジニア。APIを作ってフロントエンドの技術者がそれを利用する。DBの構築やAPIの作成が主な役割だ。

 サーバー側アプリの開発となれば、きちんと設計して時間を掛けて検証する、といったイメージだが、メルカリの中野 拓氏の仕事は「3週間1つ作る」といったテンポで進む。

 例えば、同社3周年記念のキャンペーンサイトもそうだった。ユーザーが欲しい賞品を選ぶと、ユーザーのIDと選んだ番号がサーバーに集められ、時期が来れば抽選処理をする、といったもの。フロントエンドはチームのデザイナーがHTMLで作る。中野氏はAPIを提供するという分業だ。要件は、プロデューサーが決めるが「実現したいこと」といったレベル。それを受け、中野氏がAPIを決めたり、DBを構築したりする。

 開発は、中野氏の頭のなかで設計し、簡単な図を描き、それを実装する。データの格納場所としてMySQLのテーブルを作成。それに対し、PHPからSQLでデータを挿入するプログラムを作る。レスポンスはJSONでフロントエンドのJavaScriptに返す。

 シンプルなものだが、中野氏はこのサーバーサイドの処理が他のサービスにも使い回せるようにした。例えば、テーブルには他のキャンペーンサイトで使えるように項目を追加したり、APIにキャンペーン名をパラメーター化したりしている。APIは、外部に公開する場合には認証のトークンを盗まれてもデータを守れるように気を使うが、「今は社内だけなのでそこまで厳密に考えなくてよい」(中野氏)という。

[画像のクリックで拡大表示]

 中野氏は日本を担当しているが、米国や英国でもそれぞれ開発チームがある。ただサーバーサイドのソースは全世界で共有されている。「再利用されたり、逆に変な影響を与える危険もある。自分が作ったアプリケーションが他に影響を与えないようにするのが、重要だ」(同氏)。

仕様変更でも影響少ないDB設計

1 2 次ページへ
次ページ以降は日経 xTECH Active会員(無料)の方のみお読みいただけます。
会員の方は、 ログインしてご覧ください。
まだ会員でない方は、ぜひ登録(無料)してください。
出典:ITpro 2017年 9月 20日、日経SYSTEMS 2017年5月号p.65
(記事は執筆時の情報に基づいており、現在では異なる場合があります)

注目コンテンツ