マークアップエンジニアとしてウェブ制作会社に入社してから10年になりました。若いね~と言われなくなってからも随分たちました。いろんな意味でひとつの節目に来たのかなと感じます。そこで、わたしがごく個人的に大事にしている、仕事とエンジニアリングについての価値観をまとめました。
意味もなく、これからの若手エンジニアに語りかけるようなまとめ方をしています。
基礎をかためること
フレームワークやライブラリを用いれば、やりたいことはすぐに実現できるかもしれません。AI が台頭してくれば、これまでの制作フローがひっくり返るかもしれません。それでも、基礎をないがしろにしてはいけません。知識や経験は基礎の上に積みあがるからです。基礎こそ重要だと思います。
基礎を学ぶためのアプローチはいくつか考えられます。わたしのおすすめは、資格をとることと、普段の業務のどこか一部を低水準のやりかたでやってみることです。
資格は、基本情報処理技術者試験のようなコンピューターに関する広範な知識を問うものがいいと思います。資格試験の内容はすぐに業務に役立つものではありません。おすすめする理由は、試験の対策本を読めば幅広い知識を一気に得られることと、ゴールラインを自分で設定する必要がない(ゴール=資格取得が自動的に設定される)ことです。得られる知識は通りいっぺんの浅い知識ですが、それでも必ず役に立ちます。
そのかたわら、実務で書くコードにおいては、実装の水準を少し下げてみるといいと思います。たとえば、DOM 操作は jQuery に頼らず DOM API を直接使ってみようとか。UI のアニメーションを setTimeout でループさせながら自力で動かしてみようとか。選択された JPEG 画像を回転して表示するために Exif 情報をバイナリ的に読みだして回転させてみようとか。何かしらネタはあるはずです。全部を低水準で書く必要はありません。気まぐれに決めたひとつだけでもいいのです。
基礎的なものはだいたい地味で退屈で、すぐには結果に表れません。それでもコツコツと磨くべきだと思います。基礎への理解の幅と深さは問題の解決能力につながります。応用の幅も広いです。フレームワークや XaaS の知識よりも廃れにくく価値ある知識です。
作って学ぶこと
自分で手を動かして作ってみることが大事です。作業をちょっと効率化してくれるツールとか、ブックマークレットとか、興味がわいたアルゴリズムを実装してみてもいいでしょう。
公開する必要はありません。正しくやる必要もありません。むしろ粗削りでいいし、モダンじゃない技術のほうがいいし、車輪の再発明のほうが好ましい。最短距離で技術を身につけるには、自分が作りたいものを試行錯誤しながらつくるのが一番です。これは独学で何かを身につけたことのある人ならきっとみんなが実感しています。
時間をかけること
出典が定かでないんですが、絵の上達のしかたについて、誰かが「素描の数をこなしつつ、ときどき本気で時間をかけたデッサンをするといい」と言っていました。絵に限らないな、とわたしは思います。
ひとつのものに時間をかけて向き合い品質を高めていく過程には、多くの学びがあります。時間をかけて得られる学びは、雑にいくら数をこなしてもなかなか得られないものです。しかも本質的で、ちょっとのことでは揺らがない強靭な知識や経験として身につきます。実はここで身につく知識こそ「基礎」なんですが、基礎だけやっているときは不思議とそれに気づくことはできないんですね。
プロジェクトの状況を鑑み、他に迷惑がかからない範囲で、とことん追求して作り込んでみる機会をときどき設けてみるといいと思います。
目立たなくてもよいこと
わたしが SNS でフォローしている同業界の人のなかには、目立った活動のおかげでたくさんのフォロワーをかかえていたり、頻繁に人前に登壇などして一目おかれた存在になっている人がいます。
それはそれでひとつのやり方ですが、唯一のやり方ではありません。目立っていることと実力があること、幸福なことはそれぞれあんまり関係がないんじゃないかと思います。彼らと比べてルサンチマンをかかえるより、自分は自分と割りきるほうが健全です。
実際に、人前に出なくてもきわめて優秀な人は山ほどいます。わたしは人前に出るのが嫌いで登壇の類は一度もしたことがないですが、ありがたいことに、身近な人たちからは信頼を寄せていただいているし、それで十分よかったなと思います。
目の前の相手に尽くすこと
誰のために仕事をしているかを常に意識しましょう。まずは、仕事をアサインした上司のために全力を尽くしていれば、それでいいように思います。
最初は少ない人のためにしか仕事ができないと思います。上司の次は、レビューするチームメイトのため。次に、クライアントのため。エンドユーザーのため。果てはコミュニティや社会や人類のため……と。だんだん広い範囲に価値を与えられるように自然となっていきます。
人生にはたくさん時間があるので、それこそ「時間をかけて」少しずつ、自分に近いところから確実に、順番に価値を提供していけばいいんじゃないでしょうか。順番に責任を果たしていくことが重要で、一足飛びにするとなんか変な、うさんくさいことになるような気がします。地に足をつけとくことがわたしにとっては重要なことでした。
以上、「基礎をかためること」「作って学ぶこと」「時間をかけること」「目立たなくてもよいこと」「目の前の相手に尽くすこと」の5項目に分けて書いてみました。
書いてみて、どれも似たようなことを言っているな~と思いました。浮き足だつことなく一歩ずつ着実に歩んでいけと、そういうことをいっているだけのような気がしましたし、面白みのかけらもねえなと自分でも思いました。
お読みくださりありがとうございました
実はわたくし嶌田は、4月末でネコメシを退職いたしました。冒頭に触れた節目とはこのことだったんですね。若手エンジニアに語りかけるふうだったのも、ネコメシの後輩に語りかける基調だったのです。がんばれ若手!
5月からは新しい職場で勤務しています。受託制作からは離れて事業会社になりました。何をやっていけるのかはまだ謎ですが、フロントエンド実装やアクセシビリティに軸足をおきつつ、ほかの技術にも幅広く取り組んでみたいなと思っていたりします。
そういうわけで、ここまで読んでくれた稀有な人にだけネタばらししたところで、サヨナラしようと思います。長くにわたり「ダーシマ・ヱンヂニヤリング」をご愛読いただきありがとうございました。
ダーシマパイセンの次回作にご期待ください!