目指すはITのよろず相談
ITエンジニアと言えばいろいろな捉え方がありますが、僕は「ITの困ったことがあれば相談したら解決できる人」のような幅広い知識を持つことが大事だと考えています。
ITエンジニアとしてどこか得意な分野を持つことは欠かせませんが、その専門性だけではちょっと物足りないです。
専門性は高めた上で、ITに関わるいろいろなことに知識を深めていくことで、よりスキルが磨かれたり領域広げるきっかけとなり得ます。また、その経験が意外なときに役立つことがあります。
そして、何か頼まれたときに「この人ならITのことはだいたい解決してくれるな」と思ってもらえる存在になる、というところを目指しましょう。
そのためにもまずは得意分野を持ち、そこを起点に広げていきましょう。
具体的にどういう知識やスキルが必要なのか、紹介しましょう。
PCなどハードウエアの選定に強くなる
ITを使う上でハードウエアは欠かせません。
PC・スマホ・タブレットなどの端末、Wi-Fiルーターなどネットワーク機器、データを保存するためのUSBドライブやネットワークストレージなど、いろいろな機器を使います。
こういったものを選定する必要があり、多種多様な機種の中から何を選べばいいのか見極める必要があります。
最初の頃は何を基準に選べばいいのかわかりません。
PCならWindowsなのかMacなのかという選択がありますし、CPUのスペックを選んだりメモリやSSDの容量を決めなければなりません。
安ければいいわけでもないし、お金をかければいいものが買えるわけでもありません。
性能と価格のバランスは製品ごとに違いますので、どんな性能のものをいくらの予算で買うのか、という目利きになる必要があります。
会社のPCであればサポートも必要になる場合もありますし、故障したらすぐに代替品が提供されることも大事な要素になるかもしれないです。
新しいモデルが出ると旧モデルが安くなりますし、旧モデルで問題あるのかないのか、最新のOSが出たときにバージョンアップができるかどうかも考えておくべきことです。
そういったハードウエアの選定のための基準をまずは自分なりに作り上げる、そして条件に適した商品を選べるようになると、自分にも会社にもプラスになります。
ネットワーク環境の構築
ネットワークはネットの時代には不可欠になりますが、会社でネットワーク環境を作るとなると意外と難しいです。
ネットワークはWi-FiやLANケーブルで端末間をつなぎ、ネットワークドライブやプリンタなどを接続して利用できるように構築します。
ところが、接続できる・接続できない、プリンタやドライブが見えない・印刷できない、という問題が結構発生します。
解決しようと試みますが、最大の難所はネットワークというのは目に見えないので原因の特定が難しいということです。
例えば、すぐそこにWi-Fiルーターがあるのに接続できないという時に、Wi-Fiが出している通信方式に端末が接続できないのか、接続できる端末を制限しているのではないか、などひとつずつ調べていく必要があります。
また、ネットワーク上にドライブがあるのに接続できないという場合には、ドライブ側の認証の設定が正しいか、接続のプロトコルは合っているかなど調べていきます。
プリンタやスキャナに接続できない場合は、プリンタやスキャナを利用するためのソフトを使うため、さらに難しい場合があります。
ひとつずつ要因と思われることを探り、絞り込んでいって原因を見つけます。
経験を積み重ねることが必要なスキルです。
OSとアプリケーション
MacかWindowsか?という選択は個人であれ、企業であれ悩ましい問題になると思います。
企業であればWindows一択のところもあるでしょう。
以前ですと、Microsoft Officeの互換性の問題が大きかったと思いますが、今は大きな障害ではありません。
MacでMicrosoft Officeで使ったときのファイルの互換性が保証されたことで、ビジネス文書を作る際にはMacでもWindowsでも問題なくなったからです。
※それでもフォント等によるレイアウトの崩れは起きがちです。
今Windowsが選択される理由の多くは、企業が求めるセキュリティ関係の機能を付けるなど機能拡張がしやすいということがその一つの判断になっていると思います。
一方、MacはWindowsとは異なる操作性になりますが、とても使いやすい部分もあり、今でも人気は高いです。
使いたいアプリケーションを考えて、どちらを選ぶべきかを選択する必要があります。
クラウド時代になって、MacでもWindowsでも同じアプリケーションが動くようになってきていますので、クラウドアプリケーションによる選択はあまり悩む必要はなくなりました。
それでもWindows出しか動かないアプリ、Macにしかできないことはわずかにあります。
OSやアプリケーションの選択は難しいことですが、それができるようになるくらい知識を付けましょう。
そのためにも、アプリケーションの使いこなしトラブルシューティングをしていくことで、少しずつ知識が蓄積されます。
ソフトウエア開発
ソフトウエア開発とは、すなわちプログラミングをするということです。現在ですと、ビジュアルにアプリケーションを開発するノーコードによるアプリケーション開発も含めるでしょう。
ソフトウエア開発と呼ぶときは、単なるアプリの開発というよりは、チーム開発や決められた開発手順に則って開発するという意味があります。
何か1つのアプリを開発するといっても、開発言語や使う技術の選択は一つではありません。
複数の言語やミドルウエア、フレームワークなどの中から用途に合ったものを選ぶ必要があります。
これを選定できるようになるには相当の経験が必要になります。
※ちなみに僕はプログラマとしての経験が薄いので、言語やフレームワークの選定は自信を持ってできません。
ソフトウエア開発は、プログラマだけじゃなく、開発全体を推進するリーダーの役割も欠かせません。
プログラマがたくさんいても船頭となる人がいなければ、船は思うように進んでくれないからです。
そういう、プログラミングをするだけじゃなく、その先にリーダー的な役割になってソフトウエア開発をまとめる道も目指しましょう。
プロジェクトマネジメント
プロジェクトマネジメントは、上に書いたリーダーになってソフトウエア開発進めることや、さらにその上位で複数の開発チームを統合するなどして推進する役割を持ちます。
プロジェクトマネジメントには、予算の獲得や計画の策定、プロジェクト関係者への合意、開発の推進などあります。
プロジェクトマネジメントはそれだけで1冊の本ができてしまうくらい重要な仕事なので、やるべきことは広範囲ではありますが、ITエンジニアの将来像の一つとして描いてもらえたらと思います。
最終的なプロジェクトマネージャとなって、開発を率いることを目指しましょう。