クライマーには、もともとフロントエンド寄りのキャリアから、「バックエンドエンジニアとして腰を据えてやっていきたい」と入社してきたメンバーがいます。
今回話を聞いたのは、その一人であるエンジニアの 佐久間さん。
テーマは「フロントエンドからバックエンドへキャリアチェンジしたエンジニアの本音」。 実際のところどうなの?という部分まで、ざっくばらんに聞いてみました。
まずは自己紹介と、これまでのキャリアについて
── 今日はよろしくお願いします。まずは簡単に、自己紹介と今やっていることを教えてください。
よろしくお願いします。佐久間です。
クライマーでは、バックエンドエンジニアとして案件に入っていて、PHPを中心に開発をしています。AWSなどインフラ周りを触ることもありますね。
もともとは Web制作会社でマークアップエンジニア をやっていました。HTML・CSSでのコーディングや、WordPressの組み込みなど、いわゆる「フロント寄り」の仕事が中心でした。
前職はWeb制作会社。フロント寄りのマークアップエンジニアからスタート
── 最初はずっとフロントエンド寄りだったんですよね?
そうですね。前職は、紙とWeb両方をやるデザイン会社のようなところで、その中の「Web担当」というポジションでした。
採用上の肩書きは マークアップエンジニア で、HTML・CSSで見た目を作るのがメインです。デザインは別のデザイナーさんがいて、僕はそれをもとに「Webでちゃんと動く形」に落としていく役割でした。
あとはWordPressを使ったサイト構築が多くて、テーマを組み込んだり、管理画面側のテンプレートを作ったり。いわゆる「フロントエンド寄りコーダー+ちょっとだけバックエンド」みたいな立ち位置でしたね。
エンジニアを目指したきっかけと、職業訓練校時代
── そもそも、エンジニアを目指したきっかけって何だったんですか?
一番最初は 職業訓練校 からですね。その前はまったく違う仕事をしていて、大学の職員(教務系の事務)をしていました。学生や先生、授業の調整をするような仕事です。
そこで数年働いたあと、「モノづくり寄りの仕事がしたいな」と思うようになって、Web系の職業訓練校に入りました。その訓練校では、最初はPhotoshopやIllustratorなどの デザインツールの使い方 から入り、そのあとにHTML/CSS、ちょっとだけプログラミング……という流れでした。
バックエンドは本当に“さわりだけ”だったので、本格的にやり始めたのはクライマーに入ってからですね。
「裏側で何が起きているのか知りたい」フロントからバックエンドへ興味が移っていった理由
── フロントエンドからバックエンドにキャリアチェンジしよう、と思った理由は?
もともとフロントをやっていたときに、「裏側で何が起きているのか全然分かっていないな」と感じる瞬間があったのが大きいです。
前職で、バックエンド出身のすごく優秀なエンジニアの方がいて、その人がフロントもバックエンドも両方できるタイプだったんですね。あるとき、その人と一緒に「ちょっとWebアプリ寄りのもの」を作る機会があって、僕はフロントだけ担当していました。
ただ、そのときに「この裏側で何が起きてるのか、全然理解できてないな…」と強く感じて。エンジニアとしてやっていくなら、サーバー側のことも知らないと視野が狭いな と思ったのがきっかけで、バックエンドにちゃんと挑戦したいなと思うようになりました。
フロントとバックは「言語も考え方も違う世界」
── フロントエンドとバックエンドって、実際どれくらい違うんですか?素人的には「全然違う言語」って聞くんですけど…。
結構違いますね。フロントエンドはブラウザ上で動くので、基本はJavaScriptがメイン。一方、バックエンドはサーバー側で動かすので、PHPだったりJavaだったり、Rubyだったり……いろんな言語があります。
イメージでいうと、「ドイツ語とフランス語」くらいの違い のものもあれば、「ヨーロッパ言語と中国語」くらい世界観が違うもの もある感じです。
・ベースとなる“できること”は似ているけど、書き方が違うもの
・そもそも考え方や文化が全然違うもの
その両方が混在している、というイメージですね。
クライマー入社後のギャップ
── クライマーに入社してみて、入社前後でギャップはありましたか?
雰囲気面では、正直ほとんどギャップはなかったです。YouTubeのインタビュー動画も見ていたので、想像とのズレはあまりなくて。
ただ、技術的な部分でいうと、この前初めて PHPカンファレンス に参加したんですけど、そこで「クライマー、というか池田さんたちの“界隈での認知度”」を知りました。
クライマーのメンバーが自己紹介すると、「あ、◯◯さんの会社ですよね?」みたいな感じで、PHP界隈ではけっこう名前が通っている んだなと。
池田さんだけじゃなくて、柿添さん、神山さん、宮城さんなど、歴代のメンバーが現場やコミュニティでずっと活動してきた結果なんだろうなと感じました。
バックエンドエンジニアとしての「大変さ」
── バックエンドエンジニアとして「ここが大変だな」と感じているのはどんなところですか?
一言でいうと、守備範囲が広い ことですね。前職のフロント寄りな仕事も広かったのは広かったんですが、
・サーバーの構成をどうするか
・インフラをどう組むか(AWSをどう使うか)
・テーブル設計や処理の設計をどうするか
・テストコードを書いて保守しやすくするにはどうするか
…など、バックエンドでは「設計して決めること」がとにかく多いです。
ひとつ直したら他が全部壊れる、というのは一番避けたいので、影響範囲をちゃんと閉じ込める設計 が重要になってきます。
テストコードを書いて「ここを直したときに、ちゃんと壊れたことが分かるようにする」仕組みづくりも必要ですし、サーバーへのデプロイを自動化するための仕組みもあったりして、そのあたりは本当にパターンが無数にあります。
ネットで調べるといろんな方法が出てはくるんですけど、
「今、目の前のこのプロジェクトにとって、どれがベストか?」を判断するのは、自分で考えないといけない部分だなと感じています。
チーム開発と社内サポート
── 社員や会社からのサポートで「ありがたいな」と感じていることはありますか?
案件に 基本的にチームで入れてもらえる のはすごく大きいですね。完全に1人で丸投げ、というケースはほぼなくて、2〜3人で入ることが多いです。
何か突発的なタスクが発生したときも、「じゃあこっち側は自分が引き取ります」とか、互いに調整しながら進められる体制になっています。
会社としても「誰か1人だけが全部抱え込む」という状態を避けたいんだと思いますし、リスク管理的にも合理的だなと感じます。
前職のフロント経験が活きている部分
── 前職の経験が活きているな、と感じる場面はありますか?
フロントエンド側のチェックをするときは、やっぱり活きてますね。
過去に自分がHTML/CSSをゴリゴリ書いていたので、「このあたりは崩れやすい」とか「こういうパターンは気をつけた方がいい」という感覚的なチェックポイントは、ある程度身体に染みついている感覚があります。
以前はすべて目視でテストしていたので、「画面を見ながら違和感に気づく」という意味では、その頃の経験は今も役に立っています。
今はそこに加えて、コードベースでのレビューやテスト も行うようになってきていて、先輩たちのレビューコメントから学ぶことも多いですね。
入社の決め手は「受託開発」と「チームで成長できる環境」
── そもそも、クライマーへの入社の決め手は何だったんですか?
一番大きかったのは、受託開発をやっている会社 だったことですね。いわゆるSESのように、自分が一人でクライアント先に常駐して……というスタイルではなく、社内のチームとして案件に入り、一緒に育っていける 環境を求めていました。バックエンドの経験がほぼゼロの状態で受け入れてくれる会社って、正直そんなに多くないんです。
そんな中で、クライマーは「時間はかかってもいいから、ちゃんと経験を積ませよう」というスタンスで受け入れてくれていると感じました。
「この人をこういうポジションまで育てたいから、この案件を振ろう」という中長期目線でのアサイン をしてもらえるのは、受託ならではの魅力だと思います。
職場環境で改善してほしいところは…
── 職場環境で「ここは改善してほしい」と思うところはありますか?なんでも正直に言って大丈夫です(笑)
うーん……あまり不満がないんですよね(笑)強いて言えば、椅子 ですかね。
今の椅子も一般的なオフィスチェアとしては悪くないと思うんですが、リモートの日なんかは自宅で結構良い椅子を使っているので、差を感じてしまうというか…。
1日8時間以上座ることを考えると、やっぱり椅子は身体への投資というか、大事だなとは思います。
クライマーの制度・環境の魅力
── 逆に、環境や制度面で「ここは魅力的だな」と感じるポイントは?
経費のハードルが低い のはありがたいですね。AIツールもそうですし、技術書なども、「必要だと思ったもの」は相談するとわりとスッと通ります。僕も今、AI系のサブスクをいくつか契約させてもらっていて、エディタ連携のツールなどを日常的に使っています。
「まずは試してみよう」と言ってもらえる空気感は、エンジニアとしてはすごく助かります。
これから挑戦したいこと
── 今後はどんな業務に挑戦していきたいですか?
ここ数年でAIツールが急速に進化して、僕レベルでも「自分で一からコードを書く量」がどんどん減ってきている感覚があります。
とはいえ、
・どういう構成にするか(インフラ含め)
・どういう設計にするか
このあたりの“前提”を考える部分は、まだ人間側の役割だと思っています。
「こういう機能を、この要件で、この制約の中で作りたい」と整理したうえで、AIに指示を出してコードを書いてもらう。そのときにちゃんとしたアウトプットが返ってくるかどうかは、設計する側の解像度にかかっている なと。
なので、これからは
・設計まわりの経験
・インフラ設計の経験
をもっと積んでいきたいと思っています。
目標は「自分の子ども」と呼べる案件を持てるようになること
── 最後に、今後の目標を教えてください。
一つは、「1人でできる範囲」をもっと広げていきたい ということです。今もチームとして案件に入ってはいるんですけど、メインでお客さんとやり取りをしている人がいて、自分はそのサポートポジションに入るケースも多いんですね。
井口さんがよく「自分の子どもみたいな案件を持てると楽しいよ」と言っていて。
自分が1から携わっていて、仕様も設計も実装も一番よく分かっている。そういう 「自分が一番詳しい」と言える案件 を持てるようになりたい、というのが今の目標です。
もちろん、そのポジションは責任も大きくて大変だと思うんですけど、そこに到達できたときに初めて「一人前」と言えるのかな、という感覚があります。
おわりに
フロントエンドからバックエンドへ。
まったく畑違いに見えるキャリアチェンジの裏側には、
- 「裏側で何が起きているか知りたい」という純粋な興味
- チームで育てることを前提にした受託開発の環境
- AI時代を見据えた“設計力”への意識
がありました。
クライマーでは、こうした 「キャリアチェンジの途中」にいるエンジニア も多数活躍しています。もし佐久間さんの話に少しでも共感した方は、ぜひ一度カジュアルに話を聞きに来てください。
※椅子はいいものを入れてもらえるように掛け合います(笑)