カテゴリ:IT業界・就活 投稿:2022年6月29日0:58、更新:2022年8月1日17:29
・記事の概要
SI (Sier)について、難しい言葉はなるべく無しで現場エンジニア目線で説明します。
説明の過程で自社開発(自社プロダクト開発)と比較しながらの形を取るので、双方を理解してもらえるかと思います。
・この記事の対象
・SI (Sier)って結局なんなの?ググってもピンと来ないよって方
・IT業界に就職/転職で興味がある方
・自社開発をしている企業にも興味がある方
・簡単な経歴
・PG/SE/PMとしてIT企業で働き、今は同企業で新卒採用担当をしています。
・SEとしてはSI案件を主とし、PMでは自社プロダクトを0から何個か立ち上げた経験があります。
IT用語ってよくわからない&用語を調べると説明の中にまたわからない用語が出てきて「は??」ってなりませんか 笑
そんなことがないように解説していければと思います。
ちなみに以下のようなIT業界研究用のオススメ記事がありますので、ご興味あれば後ほど参照ください!
・APIについて
APIってなんだ??エンジニア歴7年の新卒採用担当者が「Twitter」を例に解説
・DXについて
DXってなんだ??実は難解なようで単純!エンジニア歴7年の新卒採用担当者が解説
・SI(Sier)って?
ググると「システムインテグレーター」の略で「~~(小難しい説明)をする仕事です」みたいに書いてありますよね。
超ざっくり言ってしまえば
「お客さんから依頼(相談)を受けてお金をもらってシステムを開発する仕事」です。
Sierはそれを仕事とする人を指すってだけです。
「そんなのどのIT企業もやってることなんじゃないの?」って思うかもなので、
この後で自社開発(自社プロダクト開発)とも比較して説明しますね。
・自社開発(自社プロダクト開発)って?
SIが「お客さんから依頼(相談)を受けてシステムを開発する仕事」なのに対して、
自社開発とは文字通り
「自分の会社の商材となるITサービスを自分の会社で開発する仕事」です。
世の中に出す前の開発している時点では基本的にはお客さんはいない状態ですので、
ITサービスとして開発が完了してからお客さんに売っていきます。
・そのほかの違いは?
上記の説明をもとにそれぞれどう違うかも説明していきます。
違いからそれぞれの特徴を理解してもらえれば!と思い、
いきなり図示してしまいますと、こんな感じです。
いちばん上は説明済みですが
・納期面
2つ目は納期(期限)についてです。納期自体は双方あるのですが自社プロダクトの方が調整しやすいです。
ただ自社プロダクトも実際にリリースして(市場に出して)お客さんが契約済の上で、
「こんな機能(追加開発する新機能)を何月に出しますよー!」って周知しちゃうと
ちょっとだけ追加調整が必要な場面などもありますが。
・金銭面
3つ目はお金周りですね。SIは経営的な面から見ると安心感がありますね。
相当なやらかしをしない限り、契約時点でお金が入ってくることが決まっています。
ただこれがまた厄介でもあり2番目にも関連するのですが
「見積もっていたより開発期間がかかりそう」=「工数(お金)がかかりそう」ともなるので、
納期調整と金銭調整が関連性が強く、こじれると現場のエンジニアのマンパワー頼りになったりします。
一方で自社プロダクトについてでいうと、
自社のお金を投資として使って自社のプロダクトを作っていきますので
「開発にかかったお金」<「利益」とならないと赤字確定です。
ちなみに私はこの自社プロダクト開発の責任者で
数億円もの開発費用をかけてプロダクトを作ったので、
もし売れなかったらと考えると怖いですよね。
(ちゃんと黒字化までできました!)
・ちょいややこしい話(読み飛ばし可能)
ただ実際の企業を見てみると
SIerといっても「コンサル的なことはするが開発自体はほかの会社に委託する」とかもありますし
自社プロダクトの中でも「一部のお客さんから個別開発の依頼をSI的に受ける」とかもあります。
そういった各論まで理解するのは、実際に現場で経験を積んでからでいいと個人的には思います。
またSIについては「メーカー系」「ユーザー系」「外資系」「独立系」など
種別もややこしく感じるかもですが、
これについては順に「親会社がPC作ってる」「親会社がPC作ってないけどでかい」「親会社が外資」「親会社はいない」くらいの理解でいいです(超適当)。
その違いを気にして就職や転職をする必要があまりないと感じますので。
・SIerは自社開発をしないか
SIer企業はSIしかしないかというと、そんなこともないです。
SIerでありながら自社サービスを開発している企業もあります。
自社開発以外にもSES(エンジニア派遣)をやっている企業もあります。
この辺がややこしい部分でもありますが、企業ごとに異なるのでHPなどを確認しましょう。
・まとめ
いかがだったでしょうか。
細かく説明しようと思えばもっと言えることはありますが、
詰め込みすぎてもどうかと思うので要点だけ絞ってみました。
正直、自社プロダクトは
「初期開発時にお客さんがいない」=「こんなものが欲しいという答えがない」=「自分たちで最適解を考えて作っていく必要がある」という楽しさ&難しさなどもあって、
そんな説明もしたいんですけどね 笑
今回記載の内容は、案件によって程度の違いはあれど、おおよその傾向としてはそういうものなんだなと思ってもらえればと思います。
また就職活動をされている/これからされる方には、
以下のサービスがオススメです!
登録し、プロフィールを公開することで、
企業側から選考スカウトをもらうことができます。
正確性が評判の「AI適正検査」が無料で受けられ、自己分析にも大いに役立ちます。
もちろん登録/利用料(全機能)も無料です。
コメント一覧
名無し / 2023年9月13日7:34
123456
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
${@var_dump(md5(321039633))};
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
'-var_dump(md5(308603291))-'
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456'and/**/extractvalue(1,concat(char(126),md5(1021749790)))and'
名無し
expr 930964106 + 980427894 / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456/**/and+4=4
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456"and/**/extractvalue(1,concat(char(126),md5(1025268182)))and"
名無し|expr 930756956 + 946201040 / 2023年9月13日7:44
123456
${@var_dump(md5(305112786))}; / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456/**/and+3=9
名無し / 2023年9月13日7:44
extractvalue(1,concat(char(126),md5(1559069176)))
'-var_dump(md5(861223209))-' / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456'and'x'='x
名無し / 2023年9月13日7:44
123456'and(select'1'from/**/cast(md5(1259563101)as/**/int))>'0
名無し&set /A 815349719+935926425 / 2023年9月13日7:44
123456
${987128731+902037796} / 2023年9月13日7:44
123456
/*1*/{{850654487+982422044}} / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456'and'c'='x
名無し / 2023年9月13日7:44
123456/**/and/**/cast(md5('1527822246')as/**/int)>0
expr 934710398 + 970248981 / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
${952650434+929028376}
${915493364+917540350} / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456"and"c"="c
名無し / 2023年9月13日7:44
convert(int,sys.fn_sqlvarbasetostr(HashBytes('MD5','1108970136')))
名無し / 2023年9月13日7:44
123456
expr 896303348 + 885910263
${(899897354+881266638)?c} / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:44
123456"and"s"="x
名無し / 2023年9月13日7:44
123456'and/**/convert(int,sys.fn_sqlvarbasetostr(HashBytes('MD5','1957203234')))>'0
名無し / 2023年9月13日7:44
123456|expr 800864427 + 935625822
名無し / 2023年9月13日7:44
123456
名無し / 2023年9月13日7:45
123456鎈'"\(
名無し / 2023年9月13日7:45
123456$(expr 860221589 + 977460130)
<%- 960819419+915322284 %> / 2023年9月13日7:45
123456
名無し / 2023年9月13日7:45
123456
名無し / 2023年9月13日7:45
123456'"\(
名無し / 2023年9月13日7:45
123456&set /A 992721955+994304533
名無し / 2023年9月13日7:45
/*1*/{{978354899+993187165}}
名無し / 2023年9月13日7:45
123456
名無し / 2023年9月13日7:45
expr 842271817 + 825289283
名無し / 2023年9月13日7:45
${861105943+891566697}
名無し / 2023年9月13日7:45
(select*from(select+sleep(0)union/**/select+1)a)
名無し / 2023年9月13日7:45
${(940622000+892272260)?c}
名無し / 2023年9月13日7:45
(select*from(select+sleep(2)union/**/select+1)a)
名無し / 2023年9月13日7:45
#set($c=966824754+863491280)${c}$c
名無し / 2023年9月13日7:45
123456'and(select*from(select+sleep(0))a/**/union/**/select+1)='
名無し / 2023年9月13日7:45
<%- 995899191+847810987 %>
名無し / 2023年9月13日7:45
123456'and(select*from(select+sleep(2))a/**/union/**/select+1)='
名無し / 2023年9月13日7:45
123456"and(select*from(select+sleep(0))a/**/union/**/select+1)="
名無し / 2023年9月13日7:45
123456"and(select*from(select+sleep(2))a/**/union/**/select+1)="
名無し / 2023年9月13日7:45
123456/**/and(select+1/**/from/**/pg_sleep(0))>0/**/
名無し / 2023年9月13日7:45
123456/**/and(select+1/**/from/**/pg_sleep(2))>0/**/
名無し / 2023年9月13日7:45
123456'/**/and(select'1'from/**/pg_sleep(0))::text>'0
名無し / 2023年9月13日7:45
123456'/**/and(select'1'from/**/pg_sleep(2))::text>'0
名無し / 2023年9月13日7:45
123456/**/and(select+1)>0waitfor/**/delay'0:0:0'/**/
名無し / 2023年9月13日7:45
123456/**/and(select+1)>0waitfor/**/delay'0:0:2'/**/
名無し / 2023年9月13日7:45
123456'and(select+1)>0waitfor/**/delay'0:0:0
名無し / 2023年9月13日7:45
123456'and(select+1)>0waitfor/**/delay'0:0:2
名無し / 2023年9月13日7:45
123456/**/and/**/2=DBMS_PIPE.RECEIVE_MESSAGE('l',0)
名無し / 2023年9月13日7:45
123456/**/and/**/1=DBMS_PIPE.RECEIVE_MESSAGE('p',2)
名無し鎈'"\( / 2023年9月13日7:45
123456
名無し / 2023年9月13日7:45
123456'/**/and/**/DBMS_PIPE.RECEIVE_MESSAGE('o',0)='o
名無し'"\( / 2023年9月13日7:45
123456
名無し / 2023年9月13日7:45
123456'/**/and/**/DBMS_PIPE.RECEIVE_MESSAGE('g',2)='g
名無し'and'k'='k / 2023年9月13日7:46
123456
名無し'and'k'='v / 2023年9月13日7:46
123456
名無し"and"l"="l / 2023年9月13日7:46
123456
名無し"and"d"="n / 2023年9月13日7:46
123456