ライバルが少なく、ジュニア層でも目指しやすいキャリアが魅力

――:今日のテーマになります。Salesforceエンジニアについて教えてください。まずは、Salesforceエンジニアの魅力や強みについてお聞きできればと思うのですが、いかがでしょうか。
湯田氏:Salesforceエンジニアの需要に対し、供給が追いついていないという点が1番の魅力かなと思います。例えば、ReactやVue.jsが扱える人はおそらく何万人もいるでしょう。その中で、自分の差別化要素を見つけて、競争に打ち勝ち、良い仕事を獲得するのはとても大変です。
しかし、ReactやVue.jsが扱えて、さらにSalesforceまで扱えるスキルを持つ人は限られます。Salesforceを扱えるというエンジニアであるという点は、エンジニアとしての仕事を獲得する上でかなり有利に働くのではないでしょうか。
――:たしかに、今からPythonやJavaを学ぼうと思ったらライバルも多いですよね。ライバルが少ないという点はSalesforceエンジニアの魅力といえるでしょう。それだけ魅力があるのに、Salesforceエンジニアを目指す人の数が少ないのが不思議でなりません。
湯田氏:それには、二つの要因が大きく関連しているのではないかと思います。
一つは、Salesforceが、アプリケーション開発プラットフォームとしてあまり認知されていない点です。Salesforceは一般的にビジネスユーザ用のSaaSとして認識されていることがほとんどで、実はアプリが構築できるということをほとんどのエンジニアは知りません。
一般的なエンジニアであれば、クラウド上にアプリを構築する際は、AWSやAzure、GCPなどを選択するのがほとんどかと思います。
そのためSalesforceエンジニアと聞いても、どんな仕事なのか想像しにくいと思います。もしかしたら、「ビジネスユーザ向けにSalesforceの設定などをする人」などと思われるかもしれませんね。
二つ目は、Salesforceエンジニアを目指す動機がないことです。PythonやJavaなどオープンソースで世界中で広く使われているプログラミング言語がある中で、わざわざSalesforce上でしか動かないアプリを開発するためのプログラミング言語を自ら学ぶエンジニアというのはほとんどいないのではないかと思います。
また、そのための情報が、WebサイトやSNSを見てもあまり出回っていないことも、要因として挙げられるでしょう。
ノーコード開発が可能なSalesforceだからこそ工数負荷を下げられる
――:Salesforceエンジニアと、それ以外のエンジニアにはどのような違いがあるのでしょうか。
湯田氏:Salesforce以外のWeb系エンジニアは、基本的には何かサービスを開発するための技術を学ぶことが多いと思いますが、Salesforceエンジニアはサービスを開発するための技術だけでなく、Salesforceが標準で提供する機能についても学ぶ必要があります。
例えば、Salesforceには、商談の売上予測という機能がありますが、時としてこのような具体的なビジネスユースケースが想定された機能を適切に設定するスキルを求められることがあります。
――:世間一般的なエンジニアと比べて、少し特殊な感じもしますね。
湯田氏:そうですね。ただしその点は、先ほども少し話しましたが、他のエンジニアとの差別化という意味では良い方面にも働きます。現状、エンジニアとしての強みを持っていないジュニア層の人には、Salesforceエンジニアはおすすめです。
――:Salesforceならではの強みはありますか?
湯田氏:Salesforceが、AWSやAzureと違うのは、ローコードのプラットフォームだという点です。
Salesforce Platformに標準で備わっているパワフルなローコードツール群により、顧客は自らシステムの修正やカスタマイズを行うことができます。
例えば、画面のレイアウトを調整したり、簡単な自動化処理を加えたりなどです。またエンジニアは、自分の書いたコードを汎用的なコンポーネントやモジュールとしてまとめておき、ローコードツールから利用できる形にしておくことができます。
これにより、システム運用時の細かな修正のたびにコードに変更を加えることがなくなるため、自身の工数を減らしつつ顧客の細かなニーズに応えることができます。
――:たしかに、一から全て設計しなくてよいというのは魅力ですね。Salesforceエンジニアの将来性やキャリアについてはいかがでしょうか?
湯田氏:Salesforceの要素や技術を理解した上で設計でき、特にエンタープライズの仕組みを設計できるほどのアーキテクトになることが、最もポピュラーなキャリアです。
他には、Salesforceと他のプラットフォームやテクノロジーを掛け合わせる複合型のエンジニアも良いと思います。複数のプラットフォームで開発ができる人材も希少なので、需要は高いのではないでしょうか。
一般的なプログラミング言語やフレームワークの開発経験が強みになる
――:Apexという言語について教えてください。Salesforceを扱う上での言語の特色や学びやすさについて、いかがでしょうか。
湯田氏:ApexはSalesforce Platformでの開発をする上では避けては通れません。基本的な文法はJavaと同様のため、構造や文法が理解できないことはないと思います。ただし、ガバナ制限など、Salesforce独自のプラクティスを知っておかないといけない部分がありますので、その点は難しいと感じています。
――:学習難易度はいかがでしょうか?
湯田氏:学習難易度は他の言語とあまり変わらないのではないでしょうか。ただし学習資料という意味では、日本語の資料が少ないので、英語による学習が基本になってきます。ただ、英語であれば十分情報はあるので、学習で困ることは少ないでしょう。
――:他に、経験しておいた方が有利になる言語やスキルはありますか?
湯田氏:Salesforceエンジニアは、私のようにSalesforceに特化したスキルセットしか持っていないエンジニアも多くいるので、それ以外のプラットフォームやフレームワークの知識があるエンジニアは、それが強みになります。具体的にはReactやVue.jsなどでのフロントエンドの開発経験であったり、PythonやJavaでの開発経験であったり、AWSでの開発経験などです。
製品の価値を考えて開発できる人材が重宝される

――:これからSalesforceエンジニアを目指す人に向けて、学習のポイントなどがあれば教えてください。
湯田氏:学習には、Salesforceのコミュニティを使ってもらうことをおすすめします。エンジニアやアーキテクト向けのコミュニティがあるので、コミュニティに参加しながら勉強していくというのがいいかもしれません。
また、エンジニアとして基礎ができている人なら、実際に現場に入って、Salesforceでの開発経験のあるエンジニアから教えてもらいながら学ぶというのが最も良いと思います。
Salesforceでの開発は多少癖があるものの、大枠は他の言語での開発と変わらないため、経験のあるエンジニアであればすぐにバリューを発揮することができると思います。
――:最後に、どんな人がSalesforceエンジニアに向いていると思いますか?また、御社が求める人物像についても教えてください。
湯田氏:当社はまだまだエンジニアチームが小規模のため、設計書通りに機能を開発するようなエンジニアではなく、プロダクトの価値を自ら考えられるエンジニアを求めています。自治体職員の方々の普段の業務を想像したり、行政手続きのあるべき姿を考えたり、そういったことに興味を持てる人にとっては最高の環境だと思います。
当社もエンジニア採用は強化しているのでぜひSalesforceエンジニアとして活躍したい方や、ご興味のある人は来ていただければと思います。
――:ありがとうございました。