プログラマーとして仕事をするか、システムエンジニアとして仕事をするかによって、その仕事内容は変わってきます。
どちらの職種にしても、未経験でエンジニアに就職した場合、最初に任される仕事はどのようなものがあるのか、どのようなことをするのか、わからないことも多いですよね。
今回は、実際に未経験でエンジニアになってどのような仕事をしたか、私の経験を書いていきつつ、こうしたほうがいいという内容をまとめていこうと思います。
研修期間の体験談
私の場合は、まず最初に就職した会社の社内で研修をさせてもらいました。
期間は大体3か月間。
学ぶ言語については、やる予定の仕事が決まっていればその言語になるのでしょうが、私の場合はまだ特に決まっていなかったのでJavaという選択肢でした。
研修で学んだことは、実際やっといて損はない内容だと思いますので、未経験でどう勉強したらいいか悩んでいる人の参考にもなればと思います。
JAVA
まずはJavaをやるにあたり、環境の構築を自分で行います。
開発は、Eclipseという統合開発環境で行うためにネットで調べながらインストールします。
Eclipseは、Javaの開発環境としては最もメジャーなので、ネットにもたくさん情報はあります。
インストールができたら、実際に開発の練習です。
エンジニアであればだれもが知っているであろう「Hallo World」に代表されるような画面への表示から、ループやif文などの構文を学んでいきます。
最終的には、1か月程度で掲示板のようなものをつくるところまで勉強しました。
Javaを勉強してよかったと思う点は、オブジェクト指向を身に付けるという点で、初心者でもとっかかりやすいと思います。あと、Javaの需要は多いので、身に付けておくと何かと便利な言語です。Java ができれば、Androidのスマートフォンアプリも作ることができます。
もし何を勉強するか悩んでいる人がいたら、とりあえずJavaを勉強することをおすすめします。
SQL
Javaの勉強と並行してやっていったのがSQLです。
SQLは「MySQL」や「PostgreSQL」「Oracle」など色々な種類がありますが、無料で使用できるという点で、最初に使用したのは「SQLServer」でした。
Javaで作成する掲示板にSQLを組み込んで、データの更新・登録・削除を合わせて行います。
実際、どの言語・現場でもSQLは必ずと言っていいほど使用します。
「MySQL」や「SQLServer」は無料で使用できるので、練習にももってこいです。
基本的なSQLの構文はどれも変わりませんので、とりあえずはどれか一つやっておくと役に立つと思います。
基本情報技術者試験の受験
年に2回ある基本情報技術者試験。これの勉強をするのも、研修の一環でした。
受かるかどうかは採用とは関係ありませんが、エンジニアであれば持っておきたい資格の一つではあります。エンジニアとして仕事をしていくうえでベースの知識となるものを浅く広く身に付けることができます。
資格を持っているからと言って仕事が変わるわけではありませんが、基本情報技術者を持っていると、パソコンやネットワークに関する専門用語や、単語を身に付けることができて、仕事の中でもすぐにその単語の意味を理解できることが多くなります。
採用前に持っておくと、採用時にプラスに働きますので、取れるのであれば取っておきましょう。
現場での体験談
いよいよ現場に出て、まず何をするかというと、当然最初からプログラムを組むということは、未経験者には難易度が高いですよね。
そこで最初に大体任されるというか、任せることがおおいのが、単体テストです。
テスト
作られたプログラムを、テスト仕様書に沿ってテストしていきます。
慣れてくると、このテスト仕様書も、プログラムを見ながら作りました。
いわゆる単体テストとよばれるものですが、エラーがあった場合や条件が分かれている場合など、すべてのパターンのテストをする必要があります。
また、先輩社員がテストができるようにテストデータの作成も行いました。
すぐにテストに入れるように準備をしておく仕事、というほうが正しいかもしれません。
このテスト作業にかかわると、どのようなシステムかを理解することと、プログラムの書き方を理解することができるメリットがあります。
現場やシステムごとに、プログラムの書き方にはルールが存在します。まずは開発をする前に、そのルールに慣れてもらうこと、これは教える側になっても変わりません。
ですので、最初にテストから入る現場は少なくないと思います。
テスト仕様書作成
テストの結果を残したり、テストの内容を一覧にしたりするテスト仕様書。開発では欠かすことのできない書類の一つですが、ここで必要になるのがエクセルの知識です。
マクロまで覚えておく必要はないですが、どの仕事でも仕様書や画面のキャプチャ取得は、すべてエクセルに残します。Googleスプレッドシートを使用するところも多いかもしれませんが、どちらもいわゆる表計算ソフトです。
セルの色を変えたり、吹き出しを付けたり、表計算ソフトを触ることは本当に多いので、ある程度は使うことができるように勉強しておいた方がいいです。
簡単な開発
慣れてきたら、簡単な開発に着手です。
私の場合は、更新や登録のない、データを表示するだけの画面作成からスタートしました。
他にも、関数と呼ばれる一つの機能を作ったりすることもあります。
あくまで仕事なので、慣れるまでは無茶ぶりをされたり丸投げされたりすることはありませんので、そこは安心して大丈夫だと思います。
技術関連以外での体験談
社会人としての常識
エンジニアに関係なく必要なのは、ごく一般的な社会人としての基本です。
エンジニアとはいっても、開発だけではなく仕様書のやり取りをしたりお客様と電話をしたり、メールを書いたりもします。
受け答えで敬語が使えなかったり、文章が書けなかったり、エンジニアには関係のない社会人としての基本は、絶対に必要なものです。
私は異業種からの転職で、社会人経験もありましたから、この辺はクリアできていたと思いますが、実際に未経験で入って来る新人などを見ていると、この基本ができていない人も多く見ます。
社会人としてのマナーなどは、ネットや本でもたくさん情報があります。
エンジニアだから必要ない、ではなく、人と接するときのマナーなどは基本的なところは身に付けておくようにしましょう。
報連相
未経験からエンジニアになり、一番困ったのは、「わからないことを聞くタイミング」でした。
あまり質問ばかりしていてもだめですし、忙しい先輩や上司の手を止めてしまうことになります。かといってひたすら悩んでいては、スケジュールに支障が出ます。
いつまでにやらなければいけない作業かを考えて、悩む時間を決めるのは難しいことです。正直、慣れの部分が多いと思います。
調べて考えて、どうしてもわからない場合は、要点をまとめて聞く、という癖を身に付け、また、自分の現在の状況はきちんとチームや上司に連携しておくようにしましょう。
まとめ:エンジニア初心者の体験まとめ
いかがでしたか?
実際に私自身が未経験でエンジニアになり経験したことを見てきました。
もちろん就職する会社や現場によって違いはあると思いますが、未経験でエンジニアになってどのようなことをしたのか、どんなことをすればいいのか、不安に思っている方のす少しでも参考になればと思います。