Webプログラマーになるには独学でもOK?未経験可?←経験者として答えておきます

公開日: : 最終更新日:2017/09/23 ITベンチャーに転職ってどうなの?, 仕事・キャリア

このエントリーをはてなブックマークに追加

僕は、未経験者としてプログラマーに正社員採用されました。

道筋としては、独学でプログラミングを学ぶ

アルバイトでプログラマーとして働く

新卒で上場企業にプログラマーとして入社、という感じ。

大学時代に情報学を専攻していたわけじゃありません。ズブの素人からプログラマーになったのです。

素人からでも就職できる

この仕事自体は、全然向いてなかったので、2年半くらいしか続きませんでしたが。

しかし、僕のように素人からでもプログラマーになりたいという方は多いと思うので、その方法を書いてみます。

この職種自体、学歴関係なく、実力で評価されるので、腕さえあれば年収1000万円も夢じゃありません

かつて、新卒で1000万円と募集していた会社があったくらいですから

ということで、そのために必要なことも後半で書いておきますね。それではどうぞ。

スポンサーリンク

【大前提】適性があるかを知ろう

本題の前に、ぼくのような失敗をしないために「プログラマーに向いてるか?」は把握しておきましょう。

プログラマーは特に、向き・不向きが仕事の満足度に影響してきます

なので、以下の診断で「自分に向いてる仕事」を理解しておきましょう。

おすすめ>>【無料】キャリモヤ診断がなかなか的確で、適職を見つけるのに役立ちそうな件

スポンサーリンク

化学専攻だったが、独学で学んで就活でアピール

僕がプログラミングを学び始めたのは2012年の1月。大学院生時代でした。

ちなみに、僕は2007~2011年まで大学生、2011年に大学院生になった理系男子です。

2012年は、13年新卒入社のために就職活動をしていました。

専攻は化学でプログラミングは全然関係なかったですね。

プログラミングを始めたきっかけは、当時ベンチャーでiPhoneアプリ企画のインターンをしており、企画だけでなく開発もできるようになったら面白いと思ったから。

プログラミング講座にいったことで理解が進んだ

まず、何をすればいいかわからなかったので、就活で知り合った知人が開催する講座に参加することに。

そこでは、HTML、CSSなるものを教えてくれるとのことでした。

それまではどうすればアプリが動くのか、Webサービスを開発できるのかわかっていませんでしたが、講座に参加することで概要がざっくりわかりました

HTML、CSSの勉強から始めた

この時、理解したのは以下のこと。

・HTMLがWebページを表示するための骨組みになっている
・CSSはそれを装飾するもの
・人間に例えたら、HTMLは体そのもの。CSSは服やアクセサリー
・インターネットでは、ブラウザ(Chrome)というアプリを使って、サーバーに置いてあるHTMLなどのファイルを表示させている

この理解によって、サーバーにソースコードを置いておけば、Webページ、Webサービスが作れるとわかったんです。

プログラミングはPHPから学ぶといい

というわけで、まずはサーバーを借りて、HTMLとCSSを勉強することにしたのです。

さらに、Webサービスにはサーバー側で処理を変えるために、プログラミング言語を習得する必要があると聞きました。

そこでオススメされたのがPHP。ということで、こちらも勉強することに。

頓挫!独学は難しい!

まずはHTMLとCSSの本を買って勉強しました。

これらは、英語のようにとりあえず暗記して書いていけば、そこそこ理解することができました。独学で全然いけましたね。

ですが、PHPが本当に難しくて理解できませんでした。この辺で、独学の限界を感じたのですが、ここで助け舟が。

ワークスアプリケーション出身者が開催する「0から始めるプログラミング講座」なるものがあったんです。

そこでは、PHPを使って簡単なWebサービスが作れるようになる、とのことで即申込みました。

学びには絶対投資した方がいい

学生の身分には、高価な受講料でしたが、この投資から大きなリターンを得られました

この講座のおかげでプログラミングへの理解が一気に進んだんです。

この経験で学んだのは、初期段階に独学をして一人で悩むなら、お金を払ってでもプロに聞いてしまった方がいいということ。

プログラミング学習の初期でつまづかないためにプロの力を借りる

僕は講座を受けたことで、その後の学習スピードが格段に上がりました。

そもそも、プログラミングを挫折してしまう人は、初期段階でつまづく人が多いです。

しかし、それを乗り越えてしまえば、プログラミングの面白さに気づき、はまっていくことができるのです。

なので、これからプログラマーを目指す方は、プロの力を利用しましょう

最近だと、ネットからも受講できるプログラミングスクールがたくさんありますので。

いろんな講座をお得に受けられるスクール

その1つに最短4週間で家で学べる「オンラインブートキャンプ」があります。こちらは、HTML、CSS、PHP、Rubyなどいろんなプログラミング言語がネットで学べます。

実際、ほぼ0の状態からコースを受講してWebサービス、アプリを作れるようになった人も多いようなので、まずはサイトで確認してみると可能性が広がっていきます。

プログラミングスクールでうまくいった人の声

サイトにはスクールの概要を知れる動画もありますので、まずは全体像を把握するために動画も見ておきましょう。

自分にもできるかチェックしてみる>>オンラインブートキャンプのサイト

おすすめのプログラミング学習方法

なお、「スクールはちょっとハードルが高い」という人はエンジニアのためのQ&Aサイト【teratail】を使って質問しておきましょう。

他人の力を借りると、独学初期の学習スピードを速めるのに役立ちます

関連記事:短期間でプログラミング言語を学習してWebサービスをつくるための基礎知識と方法まとめ

関連記事:短期間でJavaScriptを習得し、アプリ・Webサービスをつくるための勉強法

ドットインストールという神が出現!

そうやって初期段階の壁を乗り越えた僕は、プログラミングの面白さに気づくことができました。そして、技術本を買って学習していったのです。

しかし、またもや壁が。

技術本に書いてある専門用語がわかりにくいのです。これは都度、ググるしかないのかなと思っていたのですが、知人からプログラミング学習に役立つWebサービスを教えてもらったのです。

それが「ドットインストール」。プログラミング初心者向けに基礎知識を動画で簡単に解説してくれているんです。このおかげで、よくわからない専門用語も理解できるようになりました。

「ドットインストール」も学習スピードを速めるのに必須のサービスですね。

エンジニアとしてアルバイトを始める

そんな風にして、プログラミングの勉強をしていた時、ふと「プログラミングの実務経験を積めば、もっと伸びるのでは?」と考えるようになりました。

そこで、フリーターでもできるエンジニアバイトを探すことに。(注:この時は、上場ベンチャーに内定をもらっていて、大学院もやめていたからフリーターだった)

そこで、見つけたのがIT企業のアルバイト。ちょうど、PHPを使える人を求めていたようでした。早速応募し、面接を受けることに。

そこでは、技術のペーパーテストもあり、それまで作った簡単なwebサービスのデモも行いました。ペーパーテストが散々だったので落ちたかな?と思いましたが、奇跡的に合格し、プログラマーとしてアルバイトを始めることに。

当時は、2012年の5月くらいで内定先に入社するまで、残り1年ほどの期間がありました。

アルバイト先でPHP、JavaScriptを学ぶ

アルバイト先では、社内ツールの開発のためにPHPを使いました。Symfonyというフレームワークを使った初のチーム開発でしたね。

ここで初めて、MVC(モデル/ビュー/コントローラ) の概念を学びました。これ、初心者にはめちゃくちゃ難しかったですね。また、ソースコード管理のためにsvn(サブバージョン)も使って、いい経験をさせてもらいました。

また、PHP以外にもフロントエンドの技術JavaScript、Jqueryも学び、新しい技術の理解も深めることができました。社会人になる前に、こうした経験を積めたのは本当に大きかったですん。バイト先には感謝しています。

未経験者のプログラミング勉強で大事なことまとめ

では、未経験者が0からプログラミングの知識をつけていくために必要なことをここで整理しておきます。こんな感じです。

・まずはHTML、CSSからやってネット上のコンテンツがどうやって表示されているか知る

・プログラミングの言語は簡単なものからやる(PHPがおすすめ)

・ドットインストールなどを見ながらサンプルコードをたくさん書く

・サンプルコードに書いてある意味を読み解く(英語の学習とアプローチは同じ)

・たくさんのサンプルに触れて、プログラミング言語ごとの文法を覚えていく

・ある程度できるようになったら、Ruby on Railsのようなフレームワークに手を出す(このレベルになると独学むずいので、誰かに教えてもらった方がいい)

・コードは外部に公開して(GitHubとか)、添削してもらう。技術ブログを書いて備忘録を残す

これくらいやれば、初心者でも社員として雇ってもらえるレベルまでいけます。ぜひ、覚えておいてください。

いざ、入社!の前にどうやって内定をもらえたの?

と、こんな感じでアルバイトをして2013年に内定先のベンチャーに入社!と書きたいところですが、プログラマーを目指す方が知りたいのは「未経験でどうやって内定を取ったの?」ということですよね。

なので、そちらを書いていきます。

僕が内定をもらったのは、2012年3月。プログラミングを学び始めて3ヶ月くらいしか経っていませんでした。そんな中で内定をもらえたのは「サービス寄りで考えられるマインド」と「簡単でもWebサービスを作っていたこと」が評価されたからです。

プログラミングに加えてプランナー視点も必要

「サービス寄り〜」というのは、プランナーの視点を持ったエンジニアとしてアプリを開発できることです。

僕は、アプリ企画の経験がありましたから、作るだけでなく、ユーザーが使いやすいことも考えられるプログラマーになりたいと思っていました。

これが志望動機として強かったのです。なお、他の人だと「プログラミングが純粋に好きで技術を極めたい」「将来、他の職種も考えていて技術から入っておくとその後役立ちそう」という志望動機がありましたね。

未熟でも何か作っていることがアピールになっていた

採用側としてもただ手を動かして作るだけでなく、プランナー視点を持った開発者を欲していたようです。そうしたニーズがマッチしたことも内定につながりました。

また、簡単でもいいのでwebサービスを作っていたことも大きかったです。技術は未熟でしたが、これだけでやる気があると判断してもらえました

僕が就活していた時代は幸運にもサービスを開発している人が少なかったのです。なので、マインド重視で評価してもらえていました。

今は簡単なサービス開発じゃ評価されにくい

しかし、今はWebサービスやアプリを作るのが当たり前になっているので、僕のような簡単なもので評価されるのは難しいかもしれませんね。

いづれにせよ、エンジニアらしからぬプランナー視点、ちゃんとサービスを作っていることはプログラマーとして採用されるために必要になります。

なので、プログラマーになるために面接を受ける際は参考にしてみてください。

プログラマーはなってからが本番

で、実際プログラマーとして正社員で働いたわけですが、それまでの環境とは全然違いました。ぶっちゃけ、なめてました。

まず、プレッシャーのレベルが変わってきます。アルバイト時代の社内ツールとは違い、作ったものから対価をもらうサービスだったので、損と思われないように責任感が必要でした。

さらに、ミスが許されないため、学習量も必要になりました。それまでの学習量より、社会人になってからの方がたくさん勉強しましたね。

この経験からわかったのは、プログラマーはなってからが本番だな、ということ。勉強することは無限に出てきます。必要な技術もすぐかわります

なので、プログラマーを目指す方はこうした対応が必要になることも頭に入れておきましょう。僕はそれがしんどくてドロップアウトしてしまいまたが。

プログラマーとして意識すべきこと

ドロップアウトはしたものの、会社員としてお金をもらっている以上、中途半端な仕事はできません。なので、以下10こは実践しようとしていました。

これは、新人Railsエンジニア時代、「プログラマが知るべき97のこと」を読んで、心がけていたことです。ぜひ目を通してみてください。

1 ユーザが何をするかを観察する

ユーザー視点に立つことは必須で、つくるものが決して自己満足になってはいけません。これは、ジョブチェンジ後にも役立つ考えですので、覚えておきましょう。

これは、当時の師匠にも言われたことです。ただ開発をするのではなく、ユーザーが使うシーンを想定しなければならないんです。これはどんな仕事にも共通するので、覚えておきたいですね。

実際、今の仕事でもこれが役立っています。

2 美はシンプルさに宿る

コードは煩雑にならないよう、シンプルに。エンジニアとして、開発の際は誰が見てもわかるようなコードを書く必要があります。理想はコメントがなくても、読み手がわかるコードです。

殊、Rubyは省略しやすい言語です。そうした中で、自分だけがわかるものでは後々、相手を困らせることになります。自分の書いたコードは数年後も誰かに見られること前提で書きましょう。

引継ぎの際に苦労をかけないように配慮が必要なのです。

3 コードレビューを必ず

人に見てもらうことはめちゃくちゃ重要です。評価してもらうことで、自分の悪いとことが見えてきます。

私も、コードレビューをしてもらう前は本当にクソコードを書いていました。そして、バグを出して怒られていました。しかし、レビューをしてもらうようになって、少しづつコードがわかりやすくなっていきました。

こうした変化が見られますので、チーム開発では、いきなり本番にmergeしないで、ちゃんとマージリクエストを送ってレビューしてもらいましょう。

また、人のコードをレビューすることでも成長できます。実力をつけて、後輩ができたらレビューしてあげましょう。

4 学び続ける姿勢

プログラマーに一番必要なことですね。プログラミングは才能もありますが、学習量が重要です。学習意欲だけは誰にも負けない気持ちで臨みましょう。

未経験エンジニアでも、実力をつけていく人は数多くいます。そうした人はすべからく努力していますので、しっかり勉強を。

5 1万時間の訓練

1万時間と聞くと、なかなかヘビーですが、これだけやったら突き抜けられるはず。まずは1万時間の勉強を。

6 ハードワークは報われない

エンジニアなら、いかに効率よくやるかが大切です。「エンジニアは怠惰であれ」という言葉通り、エンジニアは自動化できることは機械に任せて、クリエイティブな仕事に時間を割く必要があります。

エンジニアが多いIT・Web業界でフレックス制度が導入されているのはそのためです。新人のうちは、ムスカ若くても、自動化を意識医していると、いつか実装できるようになります。

Jenkinsなどを利用して自動化をぜひ。

7 コマンドラインツールを使う

最初のうちは、テキストベースに慣れないかもしれませんが、続けていくことでコマンドラインが早くて快適になります。また、先輩とのやりとりでコマンドラインを使えたほうが便利な機会に数多く出くわすので、覚えておきましょう。

vim文化であることを忘れずに。

8 限界を知る

どこまでできるのかを知ることで、ツールの選択を最適化できます。できないことはできないと言って、教えてもらうことも重要です。そこから学んでいけばいいのです。

無理に開発を続けて、バグを出したら本末転倒です。無理せず、任せるところは任せましょう。

9 複数の言語を学ぶ

一つの言語を徹底的に掘り下げるのもいいですが、1つの言語を習得したら、ほかの言語にも手を出してみましょう。特にRubyなどWeb系の言語とJavaなどネイティブ系アプリを開発する際に使う言語を覚えておくと、エンジニアとしての幅が広がります。

厚みのある園児にになるために、ぜひとも。

10 コードは生涯サポートするつもりで書く

先ほども書きましたが、誰が見てもわかるようにコードを書くことはめちゃくちゃ重要です。私もRailsエンジニア時代、退職者のコードを見て、苦労したことがあります。

早く開発することも重要ですが、一番重要なのは長期的に安定して運用することです。そのためにも、保守しやすいコードを書く必要があります。

その時(イベントなど)の新機能のために設計をぶっ壊すことのないよう、エンジニアリーダーに実装していいか必ず確認しましょう。そうしないと、後任者が困ってしまいます。

プログラマーは茨の道だがやりがいも

紹介してきたように、プログラマーはなるまでも学習が必要だし、なってからはもっと学習が必要になります。ぶっちゃけ、おすすめできる仕事ではありません。

過去記事でも書いていますが、仕事の時間も長いです。なので、覚悟がある人だけ、目指してみてください。

と、ここで僕がエンジニアとして働いていた時代の実態(年収、労働時間など)を書いておきます。

年収350万円。月の残業時間は40~60時間

僕は上場してネットベンチャーに入社して、ソーシャルゲームの開発を行っていました。当時の言語はRubyでフレームワークでRailsを使っていました。

研修でiPhoneアプリの開発もやらせてもらえて、その時はObjective-Cも触っていましたね。

1年目の年収は350万円(みなしで、月の残業代40時間込み)でした。月に40時間以上残業した分は、残業代が支払われるというルールでしたね。

プログラマーならみなし残業が普通

こういったことを他の業界(特にホワイト企業)で働く人に話すと、「え!」と驚かれます。彼らの会社では、すべての残業時間に対してその分の報酬が払われるからです。

ですが、ベンチャーではこのようなみなし残業込みの給料が当たり前です。

というか、僕のように残業代が超過分だけは支払われるケースも稀です。高めの年収が設定されていて、残業代は全く出ない会社もあります。

あと、基本的にボーナスがなく年俸制です。よっぽど業績が良い時は、社員に賞与として還元されますが、基本的にないと思っておいた方がいいですね。

40時間でも残業少ない方

残業時間でいうと、会社員時代は40~60時間くらいが平均でした。たまに、深夜2時まで仕事するなどして、それを超える月もありましたが、基本的に50時間前後でした。

これって、IT、Web業界以外の人にいうと「多いね」と言われます。でも、業界の人からしたら普通、というか少ないくらいなんですよ。

他の人は、80時間、100時間くらいいきます。また、ジョブグレードが上がると、残業代がもらえなくなり、残業時間でなく成果で評価されるようになります。(基本給はその分上がります)

なので、出世しない方が残業代をもらえるから給料高いなんてこともあるのです。

プログラミングが好きじゃないなら、ならない方がいい

このように、Webプログラマーというのは稼働時間が多い仕事です。ただし、プログラミングが好きな人はこれを苦痛と思いません。

なので、プログラマーになりたいなら「好きかどうか」はしっかり考えるべきですね。

その上で、好きならばプログラマーを目指すといいと思います。今であれば、プログラマーを求める企業はたくさんありますから。

専門家に話を聞くすすめ

そうやって企業(特に未経験でも採用してくれる会社)を探す際は、エージェントという仕事探しの専門家に相談した方がいいです。

彼らに一度相談すると、自分で仕事を探さなくても働けそうなところを提案してもらえるんですよ。

なので、Web業界の転職に強い「レバテックキャリア」の転職エージェントに相談してみてください。

僕も転職活動をしていた時に利用しましたが、LINEのグループ会社なども提案してもらえました。可能性を広げるためにそちらもどうぞ。

入れそうな会社を聞いてみる>>「レバテックキャリア」のサイトはこちら

筆者Twitterアカウント

フォローいただければ、最新記事や、ブログで稼ぐ、アクセスを集める方法などをタイムラインにお届けします。

仕事で悩む人から人気の記事

ブログ「らふらく」を購読する→follow us in feedly

この記事が気に入ったら
いいね!しよう

最新情報をお届けします

ブログで稼ぐ方法をまとめてます

関連記事はこちらからどうぞ!

いつもシェア感謝です!今回もぜひ

このエントリーをはてなブックマークに追加
※ 微妙だったら、そっと閉じるか、ほかの記事を見ていただけるとうれしいです!
SNSでも自分の得意なことで収入を得る方法を発信しています。フォローすれば更新をチェックできますので、ぜひフォローを。
仕事依頼などのお問い合わせは「iwgp545@yahoo.co.jp」か、「TwitterのDM」、「Facebookのメッセージ」からお願いします。

SNSでフォローしてお金を稼ぐための情報を受け取ろう
LINE@で友達追加(スマホでLINEを起動 > その他 > 友だち追加 > QRコード読み取り)
ブログで生活しているタクスズキと申します。「好きなことを仕事に」を当たり前にする活動をしています。よく「真面目」と言われる89世代の意識高い系です。 スズキについて詳しく知りたい方はこちらからどうぞ
仕事のご依頼(広告掲載、記事寄稿など)はiwgp545@yahoo.co.jpからお願いします!