SEとして働いていくために必要と思う6つのスキル

スポンサーリンク

SE
この記事は約6分で読めます。

お世話になります。山ネズミです。

生物系の大学を出ているにもかかわらず、
SE(システム・エンジニア)という仕事に就く前からITの知識をある程度持っていた。
自作PCを趣味としていたため、PCパーツの選び方やOSのインストールなどを
技術的な側面で知っていたからだ。

SEとなってその知識を活かせるかと思いきや、
ハードウェアの知識はそれほど通用しなかった。

この記事では、SEとして働いていく上で必要と感じたスキルを紹介する。

スポンサーリンク

■ネットワーク

まず必要なのは間違いなく「ネットワークの知識」である。
ネットにつながるのが日常である現代で「どうしてインターネットにつながるのか」
あるいは「インターネットにつなぐための機器はどういう役割をしているのか」といったことは
一切考えないであろう。

SEとして働く以上は、その構造は最低限知っていなければならない。
そうでなければ、「ネットに繋がらない」というトラブルに対応できないからだ。
ひとことに「繋がらない」といってもその原因は様々である。

・単純にケーブルが抜けている
・サーバーがダウンしている
・IPの競合が起きている
・ネットワークカード(NIC)の故障
・プロバイダの障害 ・・・etc.

その切り分けを即座に行うためにも、ネットワークの知識があるとないとでは大違いだ。
物理的な障害は当然確認するとして、以下のコマンドは覚えておくと良い。

・ipconfig /all
・ping
・tracert(traceroute)
・pathping
・nslookup
・arp -a

これらのコマンドと、ネットワークアダプタのプロパティから確認していく。
コマンドとプロパティからでも判断できない場合は改めて機器やLAN線の故障を疑う。

■プログラミング

SEと一言でいってもその仕事内容は様々である。
システム開発、コンサル、プロジェクトマネージャ、サーバーエンジニア・・

世の中にはまったくプログラムが書けないエンジニアも存在する。
とはいえ、やはりプログラムは書けたほうが良い。

何故なら、プログラミングができれば論理的な思考が身についていく。
「Hello World!」を画面に出力するだけでは実感できないとは思うが、
「if文」や「for〜nextループ」「配列」といった概念を学んでいくと
プログラム以外にも企画を立てたり顧客への説明をする際に「論理的に」話すことができる。

会社で扱っている言語はもちろん、気に入った言語を学んでみると良い。

プログラミングを学ぶと、銀行ATMのシステムで使われている言語や、
駅で見かけるディスプレイに表示されるエラーメッセージの意味なんかがわかるので、
いつもと違った視点で日常を見ることができる。

■データベース、SQL

データベース(DB)とそれを操作するための言語であるSQLは
SEとは切っても切り離せない関係にある。

システムに入力したデータはDBに溜まっていき、
そこから様々な帳票を出力したり、過去のデータを参照したりする。
「出力」「参照」やデータ入力による「登録」「更新」「削除」はSQLで行われている。

プログラムだけではシステムは運用できない。必ずといっていいほどDBとセットである。

自社システムでなくとも、例えばAccessで顧客情報を管理しているのであれば、
DBおよびSQLの知識は必要になる。AccessもDBだからである。

システム開発を担当するのであればなおさら必須の知識となる。
DBの操作だけでなく、DBサーバーの立て方やメンテナンスの知識も必要になる。

■サーバー

システム開発には、「サーバー」が必須である。
開発サーバー、DBサーバー、Webサーバー、ファイルサーバー・・・
現在では実機サーバーよりもクラウドサーバーのほうが使われる傾向にあるが、
サーバーはどういう役割をしていて、普通のPCとは何が違うかを理解しておいたほうが良い。

場合によっては社内サーバーの運用・管理を行う可能性もある。
社員のPCをアクティブディレクトリで管理していたり、
共有ファイルをサーバーで管理していたりする。
サーバーの立て方やRAIDに関する知識も持っていると役に立つ。

■Windows以外のOS

会社で使われているPCのOSはほとんどがWindowsである。
そのため、Windowsを理解しておけばほとんどの場合大丈夫であるが、
一部サーバーはCentOSやDebianのようなLinuxOSの場合がある。

Linuxは無料のOSなので、個人のPCにインストールすることもできる。
私は自宅のPCにUbuntuを入れて普段遣いしている。
SEとして仕事しているとMicrosoftが嫌いになってくるので、
Windows以外のOSを触れるようになると一気に視野が広がるし、安心感を得られる。

Linuxはコマンド入力で操作するイメージがあるが、デスクトップ環境も整っている。
様々なディストリビューションが揃っており、Windowsと遜色ない使い勝手ができるものもある。

Windowsで使っているソフトウェアが対応していないといった欠点はあるが、
Linuxでも代用できるソフトウェアを使うことができる。

LinuxはOSの本質を知ることができる。
Windowsは外見だけは立派だが、レジストリやカーネル部分は昔のものを
切って貼って作っているので様々な不具合が出ている。

LinuxでなくともMacOSでも構わない。
WindowsOS以外を扱えるのはそれだけでも大きな武器になる。

■Office製品

Microsoftは嫌いだが、業務でOfficeを使用している会社がほとんどなので、
その操作には長けておく必要がある。

例えばエクセルであればSUM関数と四則演算しかできないようでは力不足だ。
最低でもVLOOKUPやグラフ作成、フィルター、ピボットテーブルくらいは使えるようになろう。

また、社内文書をすべてエクセルで作ってしまうのもやめよう。
確かにワードは使いづらいが、それは使い方を知らないだけで、
使ってみれば意外といろいろなことができることに気づくはずだ。

エクセルはプレビュー時と印刷時のレイアウトがどうしても異なる。
本来は表計算ソフトであるのでドキュメントの作成には向いていない。

マクロを組むことは意外とないので、必要に応じて学べば良い。
とはいえ、プログラミングを学んでいれば何となく書けるので、腰を据えて学ぶ必要はない。

■まとめ

「SEはこんなに学ばなければならないのか」と思った方もいるだろう。

これらすべてを完璧にする必要はない。

何故なら、インターネットで調べればいくらでも解決方法を得られるからだ。
プログラムもそれらしいソースをコピペして変数だけ変えれば動いてしまうし、
なんならプログラムの骨子はだいたいなにかのコピーである。

持ち込み禁止の試験ではないので、問題に直面したら都度調べるなり聞くなりすればいい。
その過程で、自然に技術は取得できる。それでも不足と思えば、改めて学べば良い。

以上です。

スポンサーリンク

スポンサーリンク

SE
山ネズミをフォローする
My Calm Life

スポンサーリンク

タイトルとURLをコピーしました