
これからIT業界に入ろうと思うんだけど、大きい会社と小さい会社どっちがいいんだろ?



今転職活動中なんだけど、どっちを選ぶのがいいだろ?



そんな疑問にお答えします。
IT業界の会社は大きさがいろいろな会社が多数あり、選ぶときに迷いますよね?
システムエンジニアをベンダー企業で20年以上やってきた私の視点で、選ぶ際のポイントをお伝えしようと思います。ちなみに私は一度転職しており、新卒で中堅、現在はそれなりに大きな会社で働いています。
- 大きい会社に入ることのメリット/デメリット
- 小さい会社に入ることのメリット/デメリット
- その他の選択
大きな会社はどうなの?
- 研修が充実している
- 上流工程が経験できる
- 給与がそれなりにもらえる
- コネクションが使える
- 福利厚生がそれなりによい
一つずつ解説していきます。
研修が充実している
特に新人研修ですが、入社前や入社後の研修が充実しておらず、いきなり現場に行かせる会社があります。
就職活動の面接時などに確認することをおすすめしますが、大きい会社だと基本3か月~6か月の研修期間があります。(ごくたまに研修がないところもあるのかもしれませんが)
カリキュラムもしっかり考えられているので、ビジネスマナーやプログラミングスキルの基本は手に入れることができます。これを個人で学ぼうとするとかなりの額のお金がかかりますし、実務に則さない場合もあり、実際に現場に入った時に使えない可能性もあります。



特殊な例だと思いますが、私が新卒で入った会社は、新人を130人も採用(1998年の就職氷河期時)しました。(会社の規模を1000人程度)つまり全体の1/10の新人を採用していたことになります。
残りの900人で新人を育てるだけの売り上げを出さなければなりません。
結局この会社では入社前に交通費とお弁当のみ支給する入社前研修を実施、入社後は各現場に任せるというやり方を採用していました。
つまり行った先の現場でのOJTがしっかりしていないと、仕事の仕方がよくわからない人が多数出ることになります。
私は運よく新人研修をしっかりやってくれる社内の一番大きなプロジェクトに配属になったため、プログラムの知識とUNIX/DBの基礎知識はある程度得られたと思っています。
上流工程が経験できる
これはこの業界の仕組みを少し説明する必要があります。
システムエンジニアの業界は、一般的に要件定義から始まり外部設計→内部設計(詳細設計)→プログラミング(コーディング)→単体テスト→結合テスト→総合テスト(システムテスト)→リリースという流れで仕事をしていきます。(運用・保守業務はまた別なので、プロジェクトとしての流れを言っています。)
このプロジェクトの流れを見たときに大きな会社ほど要件定義や外部設計といったいわゆる上流工程を実施できる機会を得ることができる可能性があります。
私が最初に入った会社に4年間勤務して現場としては、5つほどの現場を経験しましたが、内部設計までしか経験させてもらえませんでした。4年という期間では仕方がないのかもしれませんが、その詳細設計についても入社後に研修などがあるわけではなく、現場でなんとなくで書いていたので、その後の転職先では設計作業が普通に振られたので、やり方がわからずにしばらく苦労することになりました。
大きな会社の方が一括でプロジェクトを請け負う可能性高く、その際に上流工程から実施するので、その流れができている以上、研修もあり、先輩社員も実施経験が高かったりするので、しっかり教えてくれる可能性も上がります。(先輩社員によるところもありますが)
給与がそれなりにもらえる
上記の上流工程が実施できるところに絡むのですが、上流工程である要件定義ができることと、一般的なプログラマーと比べると明らかに単価に差があります。当然上流工程ができる人材の方が単価が高いです。
この業界、上流工程から作業が始まって、下流に行くほど人数が必要になります。それで人を集めるわけですが、上位の会社から下請けに出すというのが一般的です。それが子請け、孫請け、ひ孫請けと下位に行くほど単価が安くなっていきます。
つまり顧客に提示できる単価が高ければ、社内単価も高いので給与としては高くもらえるのが当然です。(顧客に提示している単価が高いのに給与が安すぎる場合はブラック企業の可能性があります。)
小さな会社ほど、子請けや孫請けになりやすく、その分単価が低くなるので、給与も少なくなるのが普通です。
その点を考えて給与を考えると大きな会社が有利になります。
ただ、新卒時点では大きな差がないのも一般的なので、その点はご注意を。
コネクションが使える
仕事をもらう際、会社の名前が重要な時があります。
あまり知られていない会社だと大きな案件の受注は難しいところがあり、大きな会社が受けた仕事を下流の企業が分担して賄っていくというのが一般的です。
最初の受注という意味では大きな会社が有利というのは当然あります。最近ではそこまで重要視されていないのかもしれませんが、実績を見られた時に大きなプロジェクトを経験しているメンバーがいることが条件であったりするので、小さな会社ではその実績を作れない場合があります。
その点でも大きな会社では仕事上でのコネクションがあるので、大きなプロジェクトを受注できる可能性があるということです。
福利厚生がそれなりによい
これはおまけみたいなものですが、大きな会社は福利厚生面で有利な場合があります。
社外のサービスが安く利用できたり、社内でいろいろな取り組みをしていて、社員に還元しているところもあります。(自己啓発のために図書カードをくれたりなど)
しっかり調べるといろいろあるので、ちゃんと使えば有利なこともたくさんあるのが大きな会社です。
- 責任が重くなる
- 風通しが悪い
ここからはデメリットをお伝えしようと思います。
責任が重くなる
メリットのところに書きましたが、上流工程を実施するということはシステムに対する全体的な責任を担うことも多いです。その点で下請け(子請け、孫請け)の会社の失敗(スケジュール遅延やミス)の責任を取るような業務が増えていくことになります。
これ、苦手な人にとってはメンタルに来ます。私もそうでした。もちろん小さな会社にも責任があるのは確かですが、実施している立場が上になるほど厳しくなるのも事実です。
ある意味、プログラミングのみをしているときの方が楽しい時もあります。その点で技術があるとプログラミング特化で仕事ができることもありますが、大きな会社である程度の年齢になってしまうと、こういう作業ができなくなることもデメリットになりえると思います。
風通しが悪い
これもよく言われることですが、小さな会社の場合、社長とも会話する機会が割とあり、中堅クラスの会社でも常務くらいの立場の人なら簡単に会話することができます。
しかし、大きな会社になると、簡単に会話できるのはよくて部長止まり。
これがどういうデメリットになるかというと、会社に貢献している感じがあまり出ないことと、上の方で何やっているのかがわからないということです。
自分がどのように会社の役に立っているのかがわかりづらく、下手な現場に行かされると、会社から切り離されたとすら思うこともあります。
帰属意識が低くなることもあると思います。このあたり、人によってはデメリットになるかと思います。
小さい会社ってどうなの?
- 風通しがいい
- 横のつながりが強くなる
- 出世しやすい
- 個人の価値を見られやすい
風通しがいい
大きな会社で書いたことの逆になりますが、小さな会社であれば会社の上の方の人と普通に話します。会社の状況を聞いたりもすぐできますし、どうしていこうとしているかや、場合によってはこうしていきたいなんてこちたの意見を直接話すこともできます。
なので、上層部との関係は割と近いものになるので、やりやすいことも多いと思います。
理由もわからず、あの現場に行ってこい!みたいなことは、理由を聞くことが簡単ではあります。
(行かなくてよくなるわけではありません。)
横のつながりが強くなる
これは会社の規模が小さいために、部署間のやり取りが簡単になることが理由です。なので、同期や過去に一緒に仕事した先輩たちと、時間をおいてまた一緒に仕事をするなんてことも簡単にできたりします。
出世しやすい
これはデメリットにもなりえますが、長年小さな会社で働いていると、課長などという役職は普通につくことができたりします。
大きな会社だとそういったポストの数が全体の人数に対して少ないために、なれない人が多いのが実情です。
正直、これは役職名が欲しい人にはメリットになりますが、責任だけ増えると考える人にはデメリットにもなりえます。
個人の価値を見られやすい
これは私の偏見かもしれませんが、いろいろな現場に行った際、大きな会社だと〇〇社の〇〇さんという見方をされることがある中、単に〇〇さんと認識され、評価が高ければ誘われたりすることあります。
個人として見られて次の仕事に有利になることがあるということです。
この点が最後のまとめのところで、別途お話します。
- 上流工程が経験できない場合がある
- 研修が充実していない場合がある
- コネクションが少ない
- 企業体力がなく仕事が少ない時に人員削減される場合がある
ここからは大きな会社でのメリットの逆になるのですが、解説していきます。
上流工程が経験できない場合がある
上流工程が上位の会社が作業をすることが多く、小さな会社ほど下流に流れる傾向になるため、運が悪いと設計工程自体をやらせてもらえず、プログラミングしてテストして終わりというような仕事の仕方をする可能性があったりします。
プログラミングを実施できるだけましで、ひたすらテストだけやらされて、あとあとの為の業務経験が偏ってしまう可能性があります。
単価も上でも書きましたが、下流ほど単価が低くなる傾向になることから、給与も安くなりがちです。
こういう点から上流から下流まで実施できる可能性の高い大きな会社に比べるとデメリットになると思います。
研修が充実していない場合がある
この点、私は大きなデメリットだと思います。新人研修で一旦プログラミングの基礎を習ったり、ビジネスマナーなどを習ったりと基本的なところを網羅的に学習できます。
結局どっちがいい?
今回の内容をまとめます。
どちらに入ってもやっていける人は当然いまずが、私が考えとしては、新卒時には研修制度がしっかりした大きな会社に入った方がいいと思います。私の考えるいい流れは以下の通りです。
新卒で入社時には上でも書きましたが、自分で課題を見つけたり、いきなり現場に行かされるのはあまりお勧めできません。なので、就職活動時に研修がどの程度あるかを確認して、最低3ヶ月実施してくれる会社を選びましょう。大きな会社の方が、この研修については期待できると思いますが、中堅の会社でも研修がしっかりしている会社は存在するので、研修制度がしっかりしているかは、面談時に確認することを強くおすすめします。
別の記事で書こうと思っていますが、大きな会社に入りたくても入れないことも多いので、研修制度だけはしっかりした会社に入ることが大事です。(私は研修制度のしっかりした会社には入れませんでした。)
これはどういう仕事を実施するかを就職活動時の面接で確認できるのがベストですが、聞いてもそれが理想通りか判断するのが難しいと思います。
何を言っているかというと、詳細設計からプログラミング、単体テストもしくは結合テスト工程の実施までくらいの仕事だけをやらされ続けると、厳しい面が出てきます。
要するに上流工程の経験がないと、のちにフリーになるにしろ、その会社に残るにしろ仕事の幅が狭くなってしまう可能性があるので、上流工程を実施できる会社が望ましいです。
これは私の経験ですが、新卒で入社した会社では先輩社員に言われるがままに詳細設計書を書くぐらいの仕事が多く、次の会社に入社時、わからないことが多くてしょっぱなから先輩社員にひどく怒られました。通常の流れであれば、そこまでわからないということにはならないと思います。
ただ、この先輩社員からは今であれば訴えれば絶対勝てるレベルのパワハラを受けたので、単純に知らなかっただけではなかったですが、、、
OJTや社内研修で力を付けていくと、プログラミングスキルはもちろん、設計スキルもついてきていると思います。それで給与のことなど考えて、フリーランスを考えるのも一つかと思います。
私は会社に残る選択をしましたが、スキルさえ手に入れられればフリーランスで働くことは十分可能です。現在、フリーランスの人を単独で雇い入れることはあまりしないのが当然ですが、フリーランスを契約社員のようにして仕事を斡旋してくれる会社が多数存在するので、コネクションなどがなくてもスキルさえあれば、仕事をもらうことは問題ないと思います。
特にここ最近人手不足が顕著なので、よほどコミュニケーションが取れない、スキルがまったく追いついていないということがなければ、仕事がないということはないのではと思います。
私と同じようにフリーランスの道を選ばなかった場合、リーダーの実施経験などは上流工程を実施するのに必要になるので、転職などを考えてもここまでの仕事の経験が生きてくると思います。
上記の流れを意識して、仕事をしていくのがいいのかなと私は考えます。
ちなみに、こちらは私のような普通の経歴の人が対象です。
高い技術スキルを大学や個人で得ていて、それだけで食べていける人は最初からフリーランスになったり、それ以外の違う選択もできるとは思います。
わたしのような凡人は大学時代に起業するなど考えもしませんでしたし、フリーランスになる勇気もありませんでした。
とはいえ、上流工程が経験できている、未だにいろいろな研修を受けられるなど、割といい流れで来ているのではと思います。(途中うつ病になってますけど。)
今であれば、最悪現在の会社をくびになっても。どこかで仕事ができると思っています。その辺りを考えても、どこかのタイミングでは大きな会社を経験するのがいいと思います。(あくまで個人の意見です。)
何かの参考になれば嬉しいです。
今回は以上です。ありがとうございました。