Web業界進化論 実践講座#08 〜変化に強いエンジニアになる!アジャイル的キャリアアップ〜 セミナーレポート
去る7月29日、マイナビクリエイターによるオンラインセミナー「Web業界進化論 実践講座#08 変化に強いエンジニアになる!アジャイル的キャリアアップ」が開催された。
Web業界の最前線で働くロールモデルの方々からキャリアを学ぶ「Web業界進化論 実践講座」。その第8弾となる今回は山本真也氏をゲストに招き、リアルな開発現場の姿や、SaaSの開発現場で求められるスキルについて語られた。
講師プロフィール
山本 真也氏
株式会社ShareDan 代表取締役
千葉県山武市出身の1984年5月生まれ。
明治大学文学部を卒業後、株式会社法研でWebディレクターとして勤務。100以上のサイト運営を担当しつつWebサイト構築や業務改善に取り組み、2015年にフリーランスとして独立。その後、独学でフロントエンド、バックエンドの技術を習得し、2017年8月に株式会社ShareDanの代表取締役社長に就任する。自社サービス運営の傍ら、企画、構築、運営のすべてに携わってきた経験を活かし、Webディレクター兼フロントエンドエンジニアとして、大手自動車メーカーのWebアプリケーション構築や、大手携帯キャリアのサイト解析など幅広く活動。2020年には「Webクリエイターズギルド」を立ち上げ、クリエイターの育成に携わりながら大手ベンチャーのSaaS製品開発責任者として活躍している。
あるべき論にこだわるより、とにかく動かすことに集中する
山本氏は新卒で専門出版社に就職し、Webディレクターとして多くのサイト運営に携わった。現在は自ら起業した株式会社ShareDanにて、“プレイングマネージャー”として大手企業の案件を手がけている(キャリアの詳細は事前インタビュー「自分たちがWeb業界を切り拓いていくマインドを持つ」を参照してください)。
セミナーの前半では「Vue.js x Nuxt.jsを使った現場でのココだけの開発事情」と題し、特にフロントエンドエンジニアに向けて、基本設計から開発のヒントが語られた。
ReactやAngularといったJavaScriptフレームワークがある中で、山本氏はVue.jsを採用して開発に取り組んでいるという。その理由に「エンジニアの獲得が比較的容易」「モックからの移行が早い」ことを挙げ、要件定義からテストまでの期間を短縮させるための「時短戦略Tips」について説明した。
山本氏:開発環境を短時間で構築するために、私はDockerを使用しています。Dockerはデプロイ作業を簡易化できる、複数人で並行作業ができるなど、作業負荷を軽減できる機能がそろっていますので、これからのWeb開発には欠かせないものになるでしょう。
時短に向けたヒントは「画面設計とモック作成を同時進行させる」「認証機能は作らず、AWSのCognitoを利用することでセキュリティにかかるコストを下げる」といった技術的な内容から、「“あるべき論“より納期を守ること&納品物が動くことを重視」というマインドにまで及んだ。
山本氏:開発をしていると、「ここはこう設計するべき」という“あるべき論“にぶつかることがあります。“あるべき論“の通りに設計できるのがベストですが、こだわり過ぎたあまり納期を守れなくなっては本末転倒です。発注側がきちんと表示と挙動を確認できるよう、まずはとにかく動くものを目指すことも大切だと考えています。
なぜSaaSの開発現場では「柔軟性」が求められるのか
セミナーの後半は「SaaSの開発現場で求められるスキル・考え方」から始まった。
SaaS開発で求められるスキルを説明する前に、山本氏は業務システム開発とSaaS開発の違いに触れた。業務システム開発は、既存業務の効率化や最適化を主な目的とし、要件定義からテストまでを一連の流れ(ウォーターフォール型)で開発されることが多い、と山本氏は説明する。
山本氏:対してSaaS開発は、1つのWebシステムを複数の企業に提供するもの(シングルシステム・マルチテナント方式)であり、売上の向上が主な目的であるため、顧客要望に伴う仕様変更が頻繁に発生しがちです。開発手法もウォーターフォールとはいかず、設計・開発・テスト・検証を繰り返して改良するアジャイル型が適していると言えるでしょう。
さらに、SaaS開発の現場は「サービスステージごとに求められるものが変わるのが特徴」だと言う。何もないところからサービスを生み出す「0→1」の段階と、ローンチ後のグロースを考える「1→10」の段階では、求められるスキルが異なるのだ。
山本氏:「0→1」の現場では速さが重視されるため、お客様の要望を形にする提案力や、短期間で動くものを一気に作る集中力&開発力が重要になります。
山本氏:対して「1→10」の現場では安定稼働が求められ、現在動いているものをより最適化させる改善力や、改善のサイクルを地道に回す持続力が必要です。「1→10」のタイミングで入った開発メンバーにとっては、既存のコードや仕様を読み解く理解力も求められるでしょう。
SaaS開発の現場では、仕様変更が頻繁に発生し、サービスステージごとに求められるスキルが変化する。そうした変化に追従するには「柔軟に対応していくことができるスキルが求められる」と山本氏は言う。
山本氏:「特定の技術しか知らない」「特定の現場しか知らない」という状態では、視野が狭くなり、取り得る選択肢も取れなくなるでしょう。周りの人のやり方を参考にしたり、書籍にあたったりして、知見や経験を蓄積していけば、改善のヒントが見つかります。こうした蓄積は、キャリアを考えるうえでも大事ではないかと思います。
キャリアを設計することは、人生を豊かにすること
セミナーの終盤では、エンジニアのキャリアアップについて語られた。
これまで日本国内でのキャリアアップは、企業内での昇進を前提とした「メンバーシップ型雇用」が中心だった。これに対し、人材の流動性が高まったことで採用されるようになったのが「ジョブ型雇用」だ。
ジョブ型雇用では、職種を軸に複数の企業を渡り歩く。新米エンジニアとして経験を積んだあと、転職し中堅エンジニアへ、さらに経験を積んでシニアエンジニアへと、職種に見合った企業へ転職することで、キャリアアップしていくのが特徴だ。
このジョブ型雇用について、山本氏は「アジャイル的なキャリアアップとして考えてみたい」と提案する。「どの企業に勤めていたか」ではなく「どの案件を担当したか」を軸にし、案件単位で自分のキャリアを重ねていくイメージだ。
山本氏:人生の中で、携われる案件も変化していきます。体力が必要な案件は若い頃に、手応えがある案件は脂が乗りきった頃に携わることができれば、リターンも大きいはずです。人生設計と合わせて案件を考えれば、さまざまな現場で多くの知見や経験を蓄積できると思うのです。
山本氏:20代から60代までずっと働き続けることを思えば、キャリアを考えるということは、人生を考えることとイコールだと感じています。豊かな人生設計のために、どんなキャリアを歩みたいかを考えてみてはいかがでしょうか。
セミナーの最後には、質疑応答の時間が設けられた。寄せられた質問からいくつかピックアップして掲載する。
「柔軟性があるほうが生き残る」と考えると、今後フロントエンドとバックエンドの境界などは曖昧になり、フルスタックエンジニアがスタンダードになるのでしょうか?
フルスタックエンジニアが必ずしもすべてではない。
そもそも「フルスタックエンジニアとは何か」という議論もあるのですが、これは「スペシャリストか?ジェネラリストか?」という話だと思っています。フルスタックエンジニアはさまざまな知識を身に付けて、どんな案件も通用しやすいジェネラリストタイプ。それはそれで求められるスキルだと思いますが、一方で、ある分野を深く知り尽くしたスペシャリストもまた重宝されるものです。
なので、必ずしもフルスタックエンジニアがスタンダードになるとは限らないと思っています。もしキャリアに悩まれているようでしたら、自分は「広く浅く」なのか、「狭く深く」なのか、方向性を自覚してみると道が開けるかもしれません。
フリーランスか正社員か、どちらで働くか迷っています。それぞれメリット、デメリットがあるかと思いますが、どちらがおすすめなどありますか?
正社員→フリーランスの順がおすすめです。
もし正社員をやったことがないなら、先に正社員を経験することを強くおすすめします。ビジネスマナーや社会常識を知らないままフリーランスになってしまうと、どの会社も相手をしてくれません。正社員になって、自社の経理や総務のプロセスを確認しておけば、フリーランスになったあとも見積や経費精算で大いに役に立ちますからね。
どちらも経験しているのなら、自身に合う働き方を選ぶのがよいのではないでしょうか。
キャリアを変える際に、ベストとなるタイミングはありますか?
ライフプランと合わせてキャリアを考えてみては。
キャリアアップは「職種」と「業界」のどちらかの軸を持ったままのほうが実現しやすい、と思っています。まったく別の職種・業界でゼロスタートするよりも、負荷をかけずに転職できますから。
基本的にその2つの軸を忘れなければ、どんなタイミングでキャリアを変えても大丈夫だと思います。ただ、ライフプランは考慮したほうがいいかもしれませんね。結婚・出産に伴って、働き方やキャリアを変えることはありうるでしょう。もちろん、男性も育児参加のためにキャリアを変えるのは全然ありだと思いますよ。
セミナーを終えて
今回の「Web業界進化論」は、具体的な技術も含め、開発現場のリアルに迫ったものとなった。
柔軟性を得るために、山本氏は「知見と経験を蓄えることが大切」と話した。アジャイル的なキャリアアップを提唱するのも、より多くの知見と経験を蓄えるためだろう。選択肢を多く持てば、たどり着ける場所も増えていく。その先に「豊かな人生」というゴールがあるように感じた。
「Web業界進化論 実践講座」はこれからもさまざまなゲストを招いてお送りする。ぜひ今後の講座内容にも期待してほしい。
この記事を書いた人
マイナビクリエイター編集部は、運営元であるマイナビクリエイターのキャリアアドバイザーやアナリスト、プロモーションチームメンバーで構成されています。「人材」という視点から、Web職・ゲーム業界の未来に向けて日々奮闘中です。