DIVXのいちエンジニアが思う「駆け出しエンジニアを抜け出すために必要なマインドTOP3」
目次[非表示]
- 1.はじめに
- 1.1.駆け出しエンジニアとは
- 1.2.駆け出しエンジニアを抜け出すために必要なこと
- 2.DIVXのいちエンジニアが思う「駆け出しエンジニアを抜け出すために必要なマインド」第3位
- 2.1.『DIVXのエンジニアのありかた』の「あるべきカタチで考える」
- 2.2.大切だと理解していることを行動に移そうとしないと意味がない
- 2.3.「物事の本質を理解する」を行動に移したエピソード
- 2.4.番外編① 文章を書く
- 3.DIVXのいちエンジニアが思う「駆け出しエンジニアを抜け出すために必要なマインド」第2位
- 3.1.『DIVXのエンジニアのありかた』の「ロケットスタートを切る」
- 3.2.「攻めの姿勢を持ち続ける」を行動に移したエピソード①
- 3.3.『DIVXのエンジニアのありかた』の「テックリードを目指し続ける」
- 3.4.「攻めの姿勢を持ち続ける」を行動に移したエピソード②
- 3.5.番外編② お互いをリスペクトする
- 4.DIVXのいちエンジニアが思う「駆け出しエンジニアを抜け出すために必要なマインド」第1位
- 4.1.「『有言実行』に重きを置く」のメリット①
- 4.2.「『有言実行』に重きを置く」のメリット②
- 4.3.DIVXは挑戦を後押しする環境
- 4.4.「『有言実行』に重きを置く」を行動に移したエピソード
- 4.5.すべての始まりは宣言するところから
- 5.まとめ
- 6.参考文献
はじめに
こんにちは。DIVXエンジニアの矢田です。
Webアプリケーション案件のPM業務およびエンジニア業務、セキュリティに関する脆弱性診断案件の診断業務を担当しています。
DIVXアドベントカレンダー2022の2日目の記事は、「DIVXのいちエンジニアが思う『駆け出しエンジニアを抜け出すために必要なマインドTOP3』」です。この題材を選んだ理由は「駆け出しエンジニア」から始まることはすべてのエンジニアが共通することであり、「駆け出しエンジニア」を抜け出すために必要なマインドを記事にすることが他者貢献につながると考えたからです。
最初にお伝えすることとして、この記事の内容はいちエンジニアの考えにすぎません。人によっては「それは違う」と思うことがあるかもしれませんが、「なるほど。こういう考えの人もいるのか。」という気持ちでお読みいただけると幸いです。
駆け出しエンジニアとは
まず「駆け出しエンジニア」とはなんでしょうか。事実ベースとしてインターネットで「駆け出しエンジニア」を検索した結果を提示します。
駆け出しエンジニアとは、ITエンジニアとして企業への就労やフリーランスでの案件獲得を目指す、業務未経験の社会人などを指す。
「なんだ。ITエンジニアとして案件のタスクを1回こなせば『駆け出しエンジニア』から抜け出せるじゃないか」と思われるかもしれません。一般的には上記の内容の通りだと思いますが、この記事での「駆け出しエンジニア」の定義を提示します。
「駆け出しエンジニア」とは「案件のタスク解消やエンジニアとしての技術力向上に関して、一人称で結果を出すことが難しいエンジニア」のこと。つまり、「『駆け出しエンジニア』を抜け出したエンジニア」とは「自走して結果を出すエンジニア」と言えます。
駆け出しエンジニアを抜け出すために必要なこと
皆さんは「駆け出しエンジニア」を抜け出すために何が必要だと思いますか。圧倒的なプログラミング能力でしょうか。課題の根幹部分を見抜いて解決まで導く力でしょうか。もちろんどれも大切なことだと思いますが、私が思う一番必要なことは「特定のマインドを持つこと」です。ここで言うマインドとは行動の根幹にある考えのことであり、特定のマインドがない場合「『駆け出しエンジニア』を抜けるために必要な行動」を取ることはないと思います。例えるなら、油物大好きな人が「ダイエットしよう」というマインドを持っていない場合「油物が選択肢にはあるけど、油物はやめてサラダを選択する」という行動を取らないということです。もちろん100%ありえない話ではありません。「今日の占いで『サラダを食べなさい』と出たんだ!」というふうに油物を選択せずにサラダを選ぶかもしれません。しかしこれも何かしらの一貫したマインドがあるからこそです。
もう一度言いますが、行動の根幹にはマインドがあります。だからこそ今回の記事でもマインドのみをピックアップしてお伝えしようと思います。「DIVXのいちエンジニアが思う『駆け出しエンジニアを抜け出すために必要なマインドTOP3』」で記載する内容は、私自身が現在に至るまでに注力したマインドでもありますので実体験も添えてお話しできればと思っております。今後もここで紹介するマインドを持ち精進する身ではありますので、この記事を読んでいる皆さんと共に成長できたらと思います。そして、この記事の内容が皆さんの今後の人生に良い影響を与えられれば幸いです。それではTOP3いきます。
DIVXのいちエンジニアが思う「駆け出しエンジニアを抜け出すために必要なマインド」第3位
第3位は「物事の本質を理解する」です。私がこのマインドを持った理由の中に、『DIVXのエンジニアのありかた』があります。
『DIVXのエンジニアのありかた』とは、DIVXのCTOによって定められた「エンジニアが採るべき行動指針やそれを支える心得について説明したもの」です。『DIVXのエンジニアのありかた』には複数の行動指針や心得が記載されており、私が必要だと思うマインドに深く関係しております。
『DIVXのエンジニアのありかた』の「あるべきカタチで考える」
第3位のマインド「物事の本質を理解する」を説明するにあたって、関係している『DIVXのエンジニアのありかた』を項目も紹介します。第3位の「物事の本質を理解する」に影響を与えた項目は「あるべきカタチで考える」です。『DIVXのエンジニアのありかた』の「あるべきカタチで考える」の一部を記載します。
今そうなっているからではなく、あるべきカタチから考える事を忘れないようにしましょう。
本質的な課題を見極める事ができないと、Howにフォーカスしてしまいますが、そのHowを必死に実現しても「コレジャナイ」というものが出来上がる危険性があります。
本質的な課題が何なのか?を追求する事を諦めずに、「何故これをやるのか?」を起点にしたエンジニアリングを大事にしましょう。
「あるべきカタチで考える」の内容から私が理解したことは、「物事の本質、つまりは『あるべきカタチ』を見極められないと課題解決というゴールに到達することができない」ということでした。いかなることでも必ず今の状態になっている理由がある。理由を見つけるためにまずはWhyを問うことが大切なんだと当時の私は理解しました。
大切だと理解していることを行動に移そうとしないと意味がない
ここで1つ皆さんに質問です。私が理解した内容を見て「うん。本質が大事なんてことは私だって理解してるよ」と思いませんでしたか?「理解するだけで良いなら私はすでにできてるなー」と。私も当時はそう思っていたのですが、今では「大切なことを理解しているだけではマインドを持っているとは言えない」「『マインドを持つ』ということは『大切だと理解していることを行動に移せる』ということ」だと思っています。
「物事の本質を理解する」を行動に移したエピソード
それでは行動を移すに至ったエピソードをお伝えします。ある案件でアプリケーションの開発および保守に携わっていた際、アプリケーションの脆弱性を解消するタスクを行っていました。脆弱性が解消しているかについては、別会社の診断担当者様に脆弱性診断ソフトを回していただくことで確認を行うのですが、ある脆弱性だけ根強く残っていました。何度も何度もいろんな角度から修正を行なったのですが、一向に消える気配はありません。期限だけがどんどん迫ってきます。そんな時、『DIVXのエンジニアのありかた』の「あるべきカタチで考える」で理解した内容をふと思い出しました。「物事の本質を理解するためには『Why』を考えることが大切」だと。私はいったん立ち止まり「そもそもなぜこの脆弱性が検出されているのか」のみを書き出してみることにしました。「なぜ?なぜ?」と問い続けて仮説を立て続けました。仮説を立てたあとは順番に検証を行いました。その結果判明したことは、「検出された脆弱性は診断ソフトの誤検知である」ということでした。ここから私は「物事の本質を理解する」姿勢が大切だと気付きました。なぜなら、誤検知を見抜けず「どうすれば脆弱性を解消できるか」にこだわり続けていたらムダな工数がかかるだけでなくタスクを達成することができない可能性があったからです。そして、「物事の本質を理解する」ということが大切だと理解するだけでなく行動に移そうとする姿勢が大事だとも気付かされました。
改めてですが、この記事を見ている皆さんには「物事の本質を理解する」というマインドを持って欲しいと思っています。最初のアクションとして「今やろうとしていることに『Why』を問いて文字にする」を行っていただければと思います。
番外編① 文章を書く
ちなみに『DIVXのエンジニアのありかた』には「文章を書く」の項目も存在します。
本質的な問題解決は、文章を書くという行動によって再現性高く実現する事ができます。
今自分がどういう状況に置かれていて、どういった理由で何が問題になっていて、どうしなければいけないか?を網羅的に書き出してみるだけでも思考が整理され、次のアクションが明確になります。
文章を書かず、考える人と同じポーズをとって思考に耽てしまうと「結局どこまで考えたんだっけ?」と思考がリセットされてしまいます。(私の実体験です)文章を書けば視覚的に思考が整理されるため、思考がリセットされるという事態になることはほぼありません。効率的に物事の本質を理解するためにも「文章を書く」というアクションも身につけていただければと思います。
余談ですが「文章を書くなんてハードルが高すぎるよ」「手を動かすと思考に集中できないよ」という方がいるかもしれません。ですがそれは、文章を書かない言い訳になっている可能性が高いです。きっちりとした文章にする必要はありませんし、頭と手の両方を動かした方が結果的には思考が整理されます。思考が整理されたことによって文章を書いていない人と比べても本質に到達する速度が圧倒的に早くなると思いますので、まずは文字におこしてみましょう。
少し道がそれましたが、第3位は「物事の本質を理解する」でした。
DIVXのいちエンジニアが思う「駆け出しエンジニアを抜け出すために必要なマインド」第2位
第2位は「攻めの姿勢を持ち続ける」です。私がこのマインドを持つヒントとなった『DIVXのエンジニアのありかた』の項目2つを紹介します。1つ目は「ロケットスタートを切る」、2つ目は「テックリードを目指し続ける」です。
『DIVXのエンジニアのありかた』の「ロケットスタートを切る」
まずは『DIVXのエンジニアのありかた』の「ロケットスタートを切る」の一部を紹介します。
これが意味するところを一言でいうなら、ずばり「残作業がない状態を最速で目指す」という事です。残作業がある状態というのは、常にヤバい状態であるという認識を持つくらいでちょうどいいです。
プロジェクト最初の一日と、最後の一日。同じ24時間という時間ですが、最初の一日を最後の一日と同じ必死さで取り組めば、最後の一日は何もしなくて良い状態になっているかもしれません。
「ロケットスタートを切る」の内容から私が理解したことは「最初からすべてのタスクを終わらす攻めの姿勢を持つことが大切」ということでした。そして第3位でもお伝えしたとおり、大切だと理解しただけでは意味がありません。実践しようとする姿勢が大切です。当時の私は「ロケットスタートを切る」ことの重大さを心の底から納得できていないものの、なんとなくやった方が良いと理解できていたので「まずは実践してみよう!」という思いで行動していました。
「攻めの姿勢を持ち続ける」を行動に移したエピソード①
始めに行ったことは次に携わる案件のキャッチアップです。幸い当時は半月前に次に携わる案件が知らされていたので事前にキャッチアップすることができました。「アプリケーションのシステムはどう動くのか」「アプリケーションの言語は何を使っていてどういう文法があるのか」などを隙間時間で可能な限り調べました。案件が始まった瞬間動けるようにするためです。案件にアサインされてから行ったことは一日1つ成果を必ずあげる努力をすることでした。「今日は無理そうだし明日なんとかなるでしょ」とは思わない。「絶対に今日1つは成果をあげるんだ!先に進めるんだ!」という思いをもってタスクをこなしていました。もちろん一日で終わらすことが難しいタスクはたくさんあります。それでも何か成果をあげることはできるはずだと当時の私は喰らいつくことにしました。結果としては、他エンジニアのタスクを巻き取りつつスケジュールに余裕をもって案件を終了させることができました。もちろんチームメンバーがいてこその結果ですが、私が結果に貢献できたのは「ロケットスタートを切る」という攻めの姿勢をとったことだと思っております。そして「ロケットスタートを切る」という攻めの姿勢は本当に大切なことだと感情で理解できた瞬間でした。
『DIVXのエンジニアのありかた』の「テックリードを目指し続ける」
次に『DIVXのエンジニアのありかた』の「テックリードを目指し続ける」の一部を紹介します。
エンジニアになったその日から、誰よりも優れたエンジニアを目指してください。極端に言えば、今教わっている先輩すらライバルとみなす姿勢です。その姿勢がなければ、いつまでも後輩というスタンスや駆け出しエンジニアという枠組みから抜け出せません。
「テックリードを目指し続ける」の内容から私が理解したことは「『自分は後輩エンジニアだから出来なくても仕方ない』という考えから始まる行動を無くすことが大事」でした。そして「自分主体でどんどん進めよう」という思いも芽生えるきっかけとなりました。
「攻めの姿勢を持ち続ける」を行動に移したエピソード②
私はまず「先輩社員の方々が言っていることはすべて正しい」ではなく「もしかしたら間違っているかもしれない」と思い疑問点を解消させるようにしました。始めてやることに関しては自分一人でもやれるようにとナレッジの有無を確認しました。質問をするときは「どうしたらいいですか?」ではなく「私はこう思いますが合っているでしょうか?」とするようにしました。結果として、これらのアクションはスケジュールに余裕を持って案件を完遂させることに繋がりました。
「テックリードを目指し続ける」の内容よって、「自分一人でもやってやるんだ!」という攻めの姿勢の積み重ねが「駆け出しエンジニア」を抜け出すことに繋がると理解させられました。
改めてですが、この記事を読んでいる皆さんには「攻めの姿勢を持ち続ける」というマインドを持っていただきたいと思っています。最初のアクションとして「今できることを網羅して行動に移す」「自分を『駆け出しエンジニア』だと言わない」から始めてみてはいかがでしょうか。
番外編② お互いをリスペクトする
ちなみに「テックリードを目指し続ける」の紹介の際、「『自分は後輩エンジニアだから』と思わない方が良い」と言いましたが、「傲慢になれ」ということでは決してありません。他者に対するリスペクトは常に持つべきだと私は思います。『DIVXのエンジニアのありかた』には「お互いをリスペクトする」という項目も存在します。
同じ環境で協調して働く以上相手に対するリスペクトがないと、どんなに技術力が優れていても物事はうまく進んでいきません。なぜなら自分も他人も感情のある動物だからです。リスペクトを感じない相手には協力したくないのが、人間の本質だと考えています。
一番理解しておくべきことは「人間は感情のある動物」ということだと思います。つまりは「いくら正しいことをぶつけたとしても、リスペクトのないコミュニケーションだと話を聞いてもらえない」ということです。「自分が絶対に正しいのになんで動いてくれないんだ!」となってしまいます。そして「リスペクトのないコミュニケーション」を具体的にすると以下のことだと思っています。
- 相手を見下したり馬鹿にした態度をとる
- 相手の言い分や思いを無視したり理解せずに対応する
- 相手に対して攻撃的な態度をとる など
「リスペクトのないコミュニケーション」をもっと分かりやすくすると「丁寧さに欠ける対応をする」とも言えると思います。円滑に物事を進めるためにもリスペクトのあるコミュニケーションをとっていただければと思います。
少し余談を挟みましたが、第2位は「攻めの姿勢を持ち続ける」でした。
DIVXのいちエンジニアが思う「駆け出しエンジニアを抜け出すために必要なマインド」第1位
いよいよ第1位の発表です。私が一番大切にしているマインドであり「駆け出しエンジニア」を抜け出すための最短ルートと言っても過言ではないと思っています。「それでは第1位に・・・」と言いたいですがその前に聞きたいことがあります。皆さんは「自分がやりたいこと」を他者に伝えられているでしょうか?「〇〇をやりたいです!」「〇〇をやろうと思っています!」と宣言できているでしょうか?「宣言したことが達成できなかったときに恥ずかしいから」と宣言することから逃げていないでしょうか?
第1位発表します。第1位は「『有言実行』に重きを置く」です。「『有言実行』に重きを置く」とは、「自分がやりたいこと・やることを他者に宣言し、実現させるために全力を尽くすこと」です。「約束を守る」と言い換えることもできます。
「『有言実行』に重きを置く」のメリット①
有言実行をすることの最大のメリットは「信用を溜められること」だと思っています。信用は社会で生きていくために必要不可欠なものであり、信用が無ければ仕事を任せられることはありません。仕事が任せてもらえなければ自分が成長することは一才無くなってしまうでしょう。信用を溜めることは非常に重要なことであり、「有言実行」こそが信用に繋がるということです。
「『有言実行』に重きを置く」のメリット②
「有言実行」のメリットは「信用を溜められる」以外にもあります。それは「自分がやりたいことに挑戦できる」です。厳密には「有言実行」ではなく「有言」の部分が大切になります。つまりは「自分のやりたいこと・やることを他者に宣言すること」です。これは「DIVXという環境」と掛け合わさることで成立しています。
DIVXは挑戦を後押しする環境
DIVXを一言で表すと「挑戦を後押ししてくれる環境」だと私は思っています。つまりは「やりたい!」と言えば挑戦する機会を与えてくれます。そしてそこで結果が出れば更なる挑戦ができます。私自身も「やりたい!」を連呼することでPM業務や脆弱性診断業務を任されるに至りました。「やりたい!」と言えば挑戦させてくれるのですから宣言しない手はないですね。DIVX環境と掛け合わせてできあがる「自分がやりたいことに挑戦できる」というメリットも非常に魅力的だと言えます。
「『有言実行』に重きを置く」を行動に移したエピソード
最後に私が最初に有言実行したときのエピソードを紹介したいと思います。私がまだ「駆け出しエンジニア」であったとき、私は「どうすれば『駆け出しエンジニア』を抜け出せるのか」がまったくわからず悩み続けていました。「何をする必要があるのか」「どんな状態になれば『駆け出しエンジニア』を抜け出したと言えるのか」「誰かに聞いて良いんだろうか」悩みが尽きませんでした。悩みすぎて頭から煙が上がっていたかもしれません。そんな時、DIVXのCTOから「まずは宣言するところから始めてください」と言われました。「宣言することでそこに向かって勝手に努力する」と。それを聞いた時「いや、宣言しただけでそんなわけは・・・」と思ったのですが、実際に宣言していた方の姿を見て考えが変わりました。「騙されたと思ってとりあえず宣言してみよう」「宣言するだけなら損することはないし」そう思い、私は早速宣言することにしました。私が最初に宣言したことは「3か月以内に『駆け出しエンジニア』を抜け出す」でした。当時は「駆け出しエンジニア」を抜け出す方法が何か分からなかったのですが、案件で活躍するためのアクションを並べることにしました。「他エンジニアのタスクを巻き取る」というできるかどうか分からない内容でしたが、自分が一人前のエンジニアと肩を並べて案件をこなす姿を想像するとワクワクが止まらなかったことを覚えています。宣言してからは実現に向けて全力を尽くしました。具体的には今までに紹介したマインドのとおり、攻めの姿勢を崩さず物事の本質を理解することに注力しました。その結果として、宣言した内容を達成することができました。
すべての始まりは宣言するところから
有言実行してから結果に繋がるまでのエピソードをお伝えしましたが、やはりすべての始まりは宣言するところからだと私は思っています。宣言をした以上後ろに引き返すことはできない。やらざる得ない環境に飛び込める勇気があるかどうかが「駆け出しエンジニア」を抜け出す鍵となると思います。最初のアクションとして「自分がやりたいことを他者に宣言する」から始めてみてはいかがでしょうか。
というわけで第1位は「『有言実行』に重きを置く」でした。
まとめ
「DIVXのいちエンジニアが思う『駆け出しエンジニアを抜け出すために必要なマインドTOP3』」を紹介してきました。
- 第3位:物事の本質を理解する
- 第2位:攻めの姿勢を持ち続ける
- 第1位:「有言実行」に重きを置く
すべてのマインドを総合して言えることは相手からの期待値以上の行動を取ることが大切だということです。「駆け出しエンジニア」は良くも悪くも「『結果を出す』という信用がない状態」です。「駆け出しエンジニア」の状態をポジティブに捉えて「相手からの期待値を超えるチャンス」と考えるべきではないでしょうか。
この記事の内容が皆さんの今後の人生に良い影響を与えられることを願っております。最後までご覧いただきありがとうございました。
DIVXでは一緒に働ける仲間を募集しています。興味があるかたはぜひ採用ページを御覧ください。