システムエンジニアやプログラマー、サーバーエンジニア、Webエンジニア、フロントエンドエンジニアなど、同じエンジニア職でもさまざまなジャンルが存在します。言語別のトレンドだけで学習するプログラミング言語を決定するのではなく、職種別に見て考えてみることも大切です。
システムエンジニアの仕事は幅広く、システム設計からプログラミング、テスト、運用、保守までのプロセスはすべて守備範囲です。ただ機械的に設計を行うのではなく、クライアントの意向を正しく理解した上で設計に落とし込まなければなりません。設計が完了したらプログラマーにその内容について伝えるのもシステムエンジニアの仕事です。システムエンジニアになるための資格はありませんが、プログラミングに関する知識とコミュニケーション力、理論的思考力など総合的な能力が求められます。資格を取得するとしたら、基本情報技術者試験や応用情報技術者試験が役立ちます。
プログラマーの仕事は、システムエンジニアが作成した設計書に基づいてプログラミングを行うことです。コーディングをすることからコーダーと呼ばれることもあります。アプリケーション開発をするプログラマーなら、アプリケーションプログラマーと呼ばれるなど、ジャンルがわかる呼び名がついている場合もあります。アプリケーションプログラマーなら、「Java」や「Ruby」、「PHP」、「Python」などが主な使用言語です。制御や組み込み系のプログラマーなら、C言語やアセンブリ言語が主な使用言語です。資格としては、基本情報技術者試験や応用情報技術者試験に加えて、Oracle Certified Java ProgrammerやPHP技術者認定試験などの専門資格が役立ちます。
サーバーエンジニアの仕事は、サーバーの設計からプログラミング、運用、保守までを行うことです。トラブルの範囲が幅広いため、求められる知識も幅広いものとなります。資格としては、Linux技術者認定資格やCisco技術者認定資格の専門資格が役立ちます。Webエンジニアの仕事は、Webアプリケーションやその他のサービスなど、Web上のソフトウェア開発を行うことです。「Java」や「Ruby」、「PHP」、「HTML」などのスキルに加えてネットワークセキュリティの知識が必要です。資格としては、Oracle認定Javaプログラマーなどの言語に特化した資格が役立ちます。フロントエンドエンジニアの仕事は、Webデザイナーがデザインしたものを形にする仕事です。使用するのは、「HTML」や「CSS」、「JavaScript」、「PHP」などで、フロントエンドエンジニアがWebデザインからすべて担当する場合もあります。資格としては、ウェブデザイン技能検定やHTML5プロフェッショナル認定試験などが役立ちます。