【IT転職あるある】IT転職でオススメのプログラミング言語ってあるの?
【IT転職あるある】IT業界に転職したいのですが、どのプログラミング言語を勉強したらよいのでしょう?
これも開催している交流会でよくでる話題の一つです。
IT業界で働いたことがない方にとっては、プログラミング言語の違いなんてわからないですよね。
そして、業務でそれを扱うことができるかも非常に重要な点です。
この記事では、以下の内容について書いていきます。
目次
◎主要なプログラミング言語の紹介
最近の流行りのプログラミング言語とかまで挙げたらきりがないので、まずは使用されている現場数が多く、転職するうえで選択肢が多いことを基準にいくつか紹介します。
1:Java
2:Ruby on Rails
3:Python
4:その他の主要言語
1:Java
Javaはかなり昔から使われているプログラミング言語なので、転職という観点で言うと扱えるようになると非常に選択肢が増えます。業務的にも以下のような幅広いフィールドで使用されていますので、自分の働き先を決めるのに苦労はなくなると思います。
Javaが使われる業務の代表例
- Webアプリケーション開発
- Androidアプリの開発
- 主に金融系の業務システム開発
ただし、Javaを学ぶ上で注意をしたほうがよいことは、独学では習得が難しいということです。理想は基礎だけ自分で勉強してJavaを使用する現場で覚えていくことですが、その状態で採用してもらえるかはその方の年齢や、その他のプログラミング言語がどれだけ使えるかにもよると思います。
ですので、未経験でJavaの開発を教えてもらいながら携われる現場がある場合は、是非迷わずに参入することをオススメします。
2:Ruby (on Rails)
念のため(on Rails)としましたが、IT業界でRubyを使った開発業務のほとんどがRuby on Railsなので、同じものとして記載していきます(気になる方は、Ruby フレームワークでググってください)。
Ruby on Railsもここ最近ずっと需要が高まり続けているプログラミング言語なので、扱うことができれば転職では引っ張りだこになると思います。
Ruby on Railsの特徴
- Webアプリケーション開発の現場で需要が高い
- ベンチャーやスタートアップの小さな会社でよく使われている
業務でRuby on Railsを扱う場合はベンチャー系の小さい会社が多いので、開発経験が積めるのと同時にかなり忙しい職場になるかもしれませんが、一度スキルが身につけばその後ホワイトな優良企業へ転職することもできますので、修行だと思って頑張るのもよいと思います。
3:Python
最近人気のプログラミング言語で、転職にも非常に有利になる言語としてPythonがあります。
Pythonの特徴としては以下のようなものがあります。
Pythonの特徴
- 機械学習、ブロックチェーンなど流行りの現場でよく使用されている
- 構造がシンプルなので初学者にも優しい
4:その他の主要言語
それ以外にも主要言語はたくさんあります。詳細は記載しませんが、JavaScript、C#、PHPなど身につけると自身の市場価値が高まるプログラミング言語は他にもたくさんあります。
◎開発の仕事以外になる可能性もあることを知ろう
ここまではいろんなプログラミング言語がありますという内容を書いてきたので、もしかするとどの言語を勉強しようかワクワクしているかもしれませんが、ここからは現実を知っていく時間です。
実はSEと言ってもいろんな仕事があります。
例えばWebアプリ開発の現場にいるSEの中でも以下のような多様な業務があります。(SEとプログラマーを分ける考えもありますが、そのへんの話はここでは割愛します)
この1〜6のなかでメインでプログラミング言語を書くSEさんは3の開発の方だけって知ってましたでしょうか?
1の要件定義、設計は開発と同じくらい人気のポジションであり、開発経験を数年積んだ方がやる業務とも言われているのですが、4〜6のポジションに配属となった方は、思っていたSEのイメージと違う!と感じることも多いようです。
つまり、どのプログラミング元をやるのが大事か?というよりも、そもそもプログラミング言語を書く開発の仕事をやらせてもらえるかの方がもっともっと大事なんです!
Webアプリ開発の業務分担の一例
1:要件定義
2:設計
3:開発
4:テスト
5:保守・運用
6:ヘルプデスクなど
1:要件定義
一言で言うと、クライアントとどんなものを作りましょう?という打ち合わせをする仕事です。
ここでは、要件定義という経験値は、非常に価値のあるものとだけ覚えておいてもらえたら大丈夫です。
2:設計
IT業界における設計とは、簡単にいうと、プログラムを書く人がどういう手順で書いていけばよいかの説明書を事前につくるような役割を言います。
基本設計、詳細設計など設計にもいろいろあるのですが、ここではそういう業務があるということだけ知っておいてください。
もし設計業務に携われるチャンスがあれば、是非引き受けることをオススメします。プログラミングを書く開発と同じくらい価値のある業務経験値になるからです。
3:開発
プログラミングを書く仕事、業務のことを言います。開発業務を担当する人のことをプログラマーということもあります。さきほど説明をした設計業務の方がつくった設計書に従ってプログラミングを書いていきます。
4:テスト
テストとは、開発によって作られたシステムが、仕様書通りに動作するかをチェックする業務のことをいいます。
システムが仕様書通りに動作しないことをバグとよぶので、テスト業務のことをバグチェックと呼ぶ方もいます。
ここで覚えておいていただきたいのが、テスト業務も広義のSEに含まれるのですが、テスト業務の中には全くプログラミングを書かない業務も存在するということです。
テスト業務にも2種類あります
1:バグを発見→どんなバグが発生したかを報告するのみ(プログラミングを全く書かない)
2:バグを発見→自分でバグを修正するところまで行うデバッグ業務をおこなう(プログラミングを書き換える)
1のパターンのテスト業務を担当していても、プログラミングスキルは全く身につきません。ただし、未経験でIT業界に転職をした場合、プログラミングに携わらないテスト業務を担当する可能性があるのです。
5:保守・運用
開発がつくったシステムがリリース(本番として稼働し始める意味です)された後に、問題なく稼働を続いているかチェックしたり必要な更新をおこなっていく業務、そして何か不具合や障害が起こった場合の対応業務も含みます。
サーバーやネットワークといったインフラ系の知識はつきますが、プログラムを書くという開発経験はほとんど積めません。
そして、文系出身やIT未経験の方が配属されることが多いという事実も知っておいたほうがよいと思います。
6:ヘルプデスクなど
ヘルプデスクやコールセンターなどの広義のSEに該当する仕事はたくさんあります。
ここでは詳細の業務内容などは記載しませんが、大事なことは基本的にはプログラミング言語を書かない仕事であることです。
◎まとめ
IT未経験の方は、「どのプログラム言語を選べばよいでしょうか?」という質問をされることが多いのですが、この記事で記載した通り、そもそも選ぶどころか、プログラミングを書く業務につけるかもわからないという事実を知っておいたほうがよいと思います。
それも知ったうえで、どのプログラミング言語なら開発の仕事として採用をしてもらえやすいかという選び方も非常に重要だと思います。
情報なしに転職活動をすすめるのは、長期的に無駄な経験を積むことにもつながり兼ねますので、是非事前に正しい情報をとって転職活動をすすめていただければと思います。
IT業界への転職、フリーランスSEへの転職考えている方へ
転職を成功させるためには、スキルや経験値も重要ですが、同じくらい正しい情報を事前に取得することが重要です。転職フェアや転職エージェントで得られる情報はどうしても企業人事担当や営業実績を上げたい人材会社の営業担当の個人的な意見が混ざってしまう可能性があります。
フラットな情報は同世代の社会人から取得するのが最もオススメと思います。そんなフラットでリアルな情報交換をしたい方は是非、キャリアアップ交流会に参加をしてみてください
キャリアアップ交流会は、同年代のIT業界で働く様々なエンジニア、IT事務の方、IT業界への転職を目指している方とリアルな情報交換ができる場を提供しています。