システムエンジニアとしての15年の経験
システムエンジニアになってから早いもので15年以上が経ちました。
今ではフリーランスでやっています。
システムエンジニアというものは、本当に紆余曲折ある、、、本当に紆余曲折ある(大事なので2回言いました)仕事かなと思うのですが、何かを作り出すというのは面白いなと思って、ここまでやってきました。
今回は、今まで経験してきたことを書いていこうかなと思います。
最初に覚えるまでが本当に大変
僕は高卒でシステムエンジニアになり、右も左も分からないところからのスタートでした。
Javaを勉強し始めたのですが、本当に異世界の言葉で、覚えるのに苦労したことを今でも鮮明に覚えています。
新人の頃に教えてくれた先輩が3人ほどいたのですが、とても分かりやすく教えてくれて、今でも感謝してもしきれないです。
“プログラミング言語を覚える”というのは、どういう環境で学んでいくかという点が非常に重要かなと感じています。
3年は学ぶ
システムエンジニアの業界というのは、転職する人など、入りと出が多いと思います。
僕のいた会社でも辞めていく後輩も多く、中には1週間で来なくなる人もいました。
「1週間ってまじかよ」って思いますが、システムエンジニアの業界ならではなのかもしれません。
僕は「石の上にも三年」という言葉が好きで、ある程度、腰を据えて学ぶ期間が大事だと思っています。
最初は覚えるのも苦労しますが、忍耐強くやっていくことが大事ですね。
僕自身も3年経った頃から、1人立ちできた感覚があり、システムエンジニアとしての基盤ができた3年でした。
本当に作りたいのは、こんなのじゃなかった
システム納品先のお偉いさんが言ってたと又聞きした一言です。
短納期だったため、残業も多く、必死で作り上げたシステム。
クライアントのレビューもやっていて、ちゃんと作ったはずだったのに、出来上がってみたら思っていたのと違った。
あれ?
結構ありがちな事象ですね。
しっかりイメージを合わせることが大事なんだと学んだ経験でした。
イメージを合わせるのに必要なのが、コミュニケーションかと思います。
ただ、システムエンジニアはコミュニケーションが苦手な人が多いですよね。笑
僕もそうですが、基本コミュニケーションはSlackやChatWorkなど、ツールを使ってというのが多いかもしれません。
ITの進歩でツールは変わっていきますが、ツールが変わっても根本は変わりません。
今はリモートワークなので、専らSlackを使うことが多いです。
周りにもリモートワークする人も増えてきた中で、どういう風にコミュニケーションを取っていくのかというのは、今後、うまくやっていきたいポイントです。
システムエンジニアは残業が多い
よく言われることですね。
僕も、月100時間とか残業していた時期もありました。
今でも懐かしいのが、職場から電車で1駅のところに住んでいた時の話。
終電を逃して26時とか27時くらい(時間感覚おかしい)まで仕事をして、30分〜40分くらいかけて歩いて帰る、ということをしていた時期がありました。
当時は、とにかく働く、というのをやっていましたが、これが僕にとって大きな経験になりました。
たくさん時間を掛けて働く、というのを続けてきて学んだことが「生産性向上」ということでした。
長い時間掛かってしまうのは、自分の力が足りなかったり、ただ、やみくもにやっていたり…。
そこで大事なのが創意工夫です。
僕は残業が多かった経験から、どういう風にやったら生産性が高くなるか?ということを考え始めました。
システムエンジニアという仕事は、経験が積み重なっていく仕事だと感じています。
ITの技術こそ、日々新しくなっていくものの、自分が持ち合わせているスキル、知識、技術、経験を、どう組み合わせていくかということを考えます。
また、世の中にはいろんなサービスがあるので、それらをどう活用していくか、という工夫が大事だと思います。
システムエンジニアはチーム力
システムエンジニアが1人で開発することは、滅多にないと思います。
いろんな人と協力して1つのシステムを作り上げていきます。
僕は学生時代にバスケをやっていて、チームの大切さをとても感じてきました。
システムエンジニアも、チームスポーツと同じような感覚があります。
システムを作っている期間は、残業が多いとか時間に追われたり、大変なことも多いかもしれません。
今ではフリーランスになりましたが、昔はフリーランスだと個人の裁量が強いかと思っていました。
それでもチームでカバーし合ったり、お互いの強みを活かし合ったりすることで、より良いシステムが作れると思います。やっぱりシステムエンジニアはチーム力だなと感じてます。
自分の強みを作ることが大事
チームで強みを活かし合って仕事することが大事、と書きましたが、その前提は自分の強みを持っていることです。
強みは何でもよくて、自信を持ってこれ!と言えるものが1つでもあると、強いなと思います。
僕は、Javaを12年くらいやってきて、その経験がいろんな場面で生きてます。
新しい言語を覚える時でも、Javaとの比較ができて、「Javaだったらこう」とか「Javaとの違いはこう」とか、幅を持って考えることができるので、こういう強みが1つでもあると、何でもできそうと自信を持てます。
魔法使いのように課題を解決することが醍醐味
最近は『魔法使い』と言われることが増えてきました。笑
システムエンジニアは目の前の課題を、いろんな知識やスキルを持って解決しています。
その様が、RPGの魔法のように見えるようです。
その解決する瞬間が僕にとって一番の醍醐味です。
これからも魔法使いのように、いろんなスキルを使いこなして、様々な課題を解決したり、いろんな人のお役に立っていければと思っています。