プログラムの仕事したいんだけど、「どのくらい」できればいいの??
10箇所以上のIT系現場に常駐して仕事してきましたsinです。
WEB業界を中心に、ディレクターとしてエンジニア採用や開発要件の外部発注もしてきました。
プログラミングの仕事レベルのスキルとはどこから?
私がみてきた「入ってくる新しい人」と「現場の技術レベル」の視点から考えてみました。結論としては、すごく幅があります。採用サイドからいうと、会社の方針や業務内容、開発体制によります。プロジェクト単位で全く変わってくるでしょう。一律に決められません。
ですが、これから勉強されている方、挑戦される方には
自分にできるのか?
という大きな不安があることと思います。今回は個人的解釈ですが、具体的にこれがこのぐらいできていればいいのでは?という形を整理してみました。※あくまで個人的解釈です
プログラミングのお仕事のパターンとして
◎会社にはいってプログラミング
◎個人で受けてプログラミング
アルバイトや社員のような働き方と
在宅ワークでの働き方とも言い換えられます。
会社にはいってプログラミング
はじめは新卒を除いた場合、派遣登録して出向したり、アルバイトとして入社します。
ここで考えられる採用面接を突破するにあたり
◎何かひとつプログラムでつくったことがある
ことが必須といっていいと思います。何がどれくらいできるのかが、わかりやすいからです。面接時に作ったプログラム込みの成果物を見せるのが早いです。
プログラムの概要がわかれば紙面でもいいです。レンタルサーバにあげてスマホでみせてもいいです。見せる何かを用意しておきましょう。
その成果物を通してお話させてもらいます。有識者がいる採用サイドは、実力がすぐわかります。
ものつくりの規模、精度、内容から「技術の使いどころ」を理解して使っているのか、そうでもないのかなど、見たり話したりすると、たくさん類推することができます。承知していますが、学習中であることは、改めて伝えるといいかもしれません。
自身の成果物の説明のなかで、完全に理解がおよんでいない箇所があっても構いません。ただ、説明の練習はしたほうがいいかと思います。
せっかく作ったのに、説明が下手すぎで哀しくなるのももったいないです。
採用側は面談者の技術レベルが今の現状と離れすぎていないか、合っているかを考えます。いっしょに働くプランが立つかを計算しています。
もしこのレベルならこういった内容からスタートしてトレーニングの期間・内容、近い業務案件は~などなど整理しています。
アルバイトからのキャリアのスタートがおすすめです。アルバイトであれば、採用側もある程度幅広く、気軽にみています。いっしょに働けるプランが立てば採用できます。
その力量が参画するプロジェクトに合えばOKです。合わなければNGです。運も大いにあります。落ちてもまったく悲観することはありません。
これからエンジニア志望のアルバイトの方を採用するとします。私ならプログラミングの基礎としての理解があるか?を見ます。
WEB系プログラミング職の私の場合ですが、具体的には
◎for文 if文 変数 配列の適切な使い方
◎HTML,CSSでの画面作成能力
◎プログラムとの関わる上でのSQL等のDBの基本的な知識
◎SQLインジェクションなどセキュリティの知識
上記のこれが「どのくらいできればいいの?」の回答に近いと考えます。
これらの上で
◎トレーニングを通して成長できる人間性
◎プログラミングが好きであること
◎エンジニアとして身を立てたい人
個人で受けてプログラミング
正直に私は、クラウドソーシングなどネットを通した案件を個人で仕事としてうけたことがありません。
案件をみるにやれないことはないのかな?と感じます。近いうちに実際にトライしてみたいと思っています。
私は企業サイドからご依頼する立場でお仕事させていただいたことはあります。その角度から答えると厳しいですが、実績がない方にお仕事はお願いしていません。なぜなら
「品質」と「納期」を「問題なく」「達成」できるか?
ここの不安を突破できません。これがすべてといってもいいです。私が初めてやるなら、まず実績を作ります。なんでもよいので小さな仕事をうけてこなして実績を積みます。成果物を確かに納品する人間であるという信用の見栄えをつくることから始めます。
プログラミング能力の前に、このやりとりの経験・信用がないと心理的にご依頼をしたくともできません。
実績が豊富ある方、紹介、前にもお願いした方が強いです。対価も能力も重要ですが、まずは信用です。
在宅はアルバイト志望よりも技術要求レベルはやや高めになる
自分で仕上げきらないといけません。そのため、アルバイトよりレベルは上がります。
プログラミングスクールで勉強してすぐ個人で仕事を受けるのは、経験者からみてかなり稀な例と思います。
クラウドソーシングの案件をみて8割位の完成イメージがもてるくらいがいいかと思います。となると、それなりに知識も技術も満たし、幅広い問題解決力が必要になります。
自分の力量が案件を超えている見通しがないと、仕事を受け取るのも怖いと思います。一般的な手法としてはおすすめできません。
試しとして、クラウドソーシングの案件を模擬的にやってみるといいかもしれません。なんなくできればOKです。
最後にまとめ
プログラムでお仕事をする、お金を稼ぐにあたってスキルのレベルはアルバイト形式が最小。具体的な内容は
◎for文 if文 変数 配列の適切な使い方
◎HTML,CSSでの画面作成能力
◎プログラムとの関わる上でのSQL等のDBの基本的な知識
◎SQLインジェクションなどWEB上のセキュリティの知識
(WEB系プログラミング職の場合)
程度と考えました。
前述のとおり、現場の状況・方針が重視で内容は大きく異なります。
目標の一つとしてご参考までに。