成長の早いジュニア・ソフトウェアエンジニアの特徴
ぼくは「アドバイザー」という立場でフィヨルドブートキャンプに関わらせてもらっているので、受講生のみなさんの今後の活動にほんの少しでも役立つお話を書けたらうれしいな、と思います。 というわけで、ぼくが見てきたであろう数百人のジュニア・ソフトウェアエンジニアたちを思い返しながら、成長が早い人々に共通する特徴と思うものをいくつか紹介します。あくまでもぼくの観測範囲内における話ですので、あてはまらない環境もあることでしょう。
すくすく育つジュニア・ソフトウェアエンジニアの特徴
素直である
思考の解像度が高い
コミュニケーションがうまい
素直である
こちらが伝えた内容から不要なことを邪推しないというか、文字通りに「真っ直ぐ」である人は、望ましい行動に最短経路で向かっていくので効率的な行動を選択していくな、と感じます。「なにかわからないことがあったら、すぐに質問してくださいね」と言われたときに、実際にすぐに質問できる人はどんどん前に進んでいきます。余計なことを考えない分、リソース効率がよいのでしょう。
ぼく個人は、人間はもともと素直な生き物なんじゃないかと思っています。それが、イヤな体験を重ねるたびに少しずつ防衛的になって、だんだんと素直さに蓋をしてしまうケースがあるイメージです。「それくらい自分で調べろ、いちいち質問するな」と怒鳴られるようなことがあったら「すぐに質問してね」と言われてもなかなか実行に移せなくなりそうですよね。そういう人は「自分は、そういう状況である」というのを自覚することから始めるとよいでしょう。「質問してよかった」というプラスの体験で上書きしていくのがよいと思います。
ちなみにぼくは「食卓に並んだ食べ物は残さずに食べよう」という方針の家庭で育ったので「お腹がいっぱいだったら、無理せず残してください」と言われてもなかなか残せません。自分に刻まれた価値観があると自覚しています。30 歳を過ぎてから少しずつ「無理して食べると体に悪いよな〜」「残りは明日にでも食べよう」と考えて行動を選べるようになってきました。
思考の解像度が高い
例えば足腰ではなく大腿四頭筋、ハムストリングス、中臀筋など分けて会話するのが当たり前の集団では、これらの役割を分けて説明しなければ会話についていけない。結果これらの筋の動きや役割を理解していく。
アスリートの為末大さんの文章からの引用です。「足腰」という漠然とした言葉ではなく「大腿四頭筋」「ハムストリングス」「中臀筋」のように、より解像度の高い言葉で物事を考えたり説明したりできるようになると、ソフトウェアに対する理解も深くなっていくことでしょう。それが成長の早さに直結します。 この能力を高めるにはひたすらに「考える」という研鑽を積むしかなさそうですが、効率よく磨いていこうと思うのなら、日頃から丁寧に言葉を選ぶことを意識するのがおすすめです。ぼくらの業界では「Wikipedia のことを Wiki って呼ぶな」という指摘がよく見られます。これは地理学者がインドネシアのことをインドと呼んでしまうやばさを想像してもらうとわかりやすいでしょう。最近だと Uber Eats のことを Uber と呼んでしまう事例をよく見かけて、ソフトウェア開発者としてはハラハラしながら過ごしています。 特にソフトウェア開発に関することや、業務で扱う領域については、言葉を正しく用いることで思考の質を高めていきたいものです。すでにみなさんが体験されている通り、ソフトウェア開発に取り組む時間の多くは「名前づけ」などの言葉選びの時間です。言葉を雑に扱う態度では、きれいなクラスやモジュールやメソッドを作り出すことは難しいでしょう。
コミュニケーションがうまい
「コミュ力が高い」「空気を読める」のような抽象的な話をしてしまうと、さっそく思考の解像度が低いということになってしまいますから、まずはここでいう「コミュニケーション」を「行動によって情報量を増やすこと」としましょう。それが「うまい」というのは「効率よく情報量を増やせる」ということです。
「今年は 2020 年です」と書いても、おそらく読者全員が「知っとるわい」となって情報量は増えません。無駄な記述ですね。相手の側になくて自分の側にだけある情報を発信して伝えていくのがコミュニケーションの基本です。
あなたが経験の浅いジュニア・ソフトウェアエンジニアであれば、あなたの側にしかない情報とは「あなたが考えていること」「あなたの手元で起こっていること」であることが多いと思います。なにかしらのエラーが発生して対応にあたっているとき、あなたがどんなことを考えてなにを実行してどんな結果となったのか、まわりのみんなはエスパーではないのでわかりません。相手がなにを知りたがっているかを把握し、適切な粒度で、適切な手段で伝えられるようになれば、あらゆることがスムーズに進むようになるでしょう。
「今日はこれをやろうと思っています」「いま、◯◯で苦戦しています」「きのうから体調が悪くてパフォーマンスが低下しています」「今の説明を聞いて私はこう認識しています」こういった情報を上手に提示する人は、周囲からのサポートを得やすく、結果的に成長も早くなることが多いように見えています。
この文章もコミュニケーションの試行のひとつです。アドバイザーのぼくの側にあって、受講生のみなさんが知りたい情報はなんだろうか、と考えるところからテーマ選びを始めました。