アカウント:enotiru(エノチル)
出身:福島県福島市
趣味:ゲーム、ギター、音楽鑑賞、ラーメン屋巡り
2度の挫折がやる気に火をつけた
Web開発の世界にも似たものを感じますが、昔から自分で何かを創作したいとか、それを誰かにも見てもらいたいという気持ちが強くありました。幼少期にもよく紙工作で遊んだり漫画を書いたりしていました。高校生時代には、バンドを結成して何度かライブに出てみたり、自分で曲を作ったりしました。
大学受験では、当時希望していた大学に、現役時代と浪人時代の2度落ちた苦い経験があります。結局大学に進まず、浪人を終えて半年後の秋に専門学校に進学しました。
専門学校入学まで、半年間アルバイトして過ごしていましたが、プログラミングを始めたのはその時期でした。当時、ふとアフィリエイト広告で稼げないかと思い立って、自分でいろいろと調べながらWebサイトを作ってみたのがことの始まりです。スムーズにそれぞれの道に進んだ高校の同級生たちからは1年半の遅れもありましたし、受験に失敗したことで、両親が一生懸命働いて工面してくれた予備校の費用も無駄にしてしまった後ろめたさを感じていました。
最終的にアフィリエイトで収入は得られませんでしたが、そのような後ろめたさが「より複雑なWebサイトの作り方を知りたい」「サイトが動く仕組みを知りたい」という気持ちを駆り立て、専門学校に進んでからも、ゲームやシステムを作ってみてはソースコードをひたすらGitHubに上げる日々を続けました。大げさな話ではなく、たとえ辺りが暗くなっても、参考書を街頭の光で照らして読むほど打ち込んでいたと思います(笑)。夢中になったものをとことん追求したい性格のせいかもしれません。
公私を切り分けないというイメージに、ムーブの働き方がマッチ
ムーブには専門学生時代にアルバイトとして入社し、卒業後に社員登用されました。専門学校にいた頃には、既に将来Webシステム開発の仕事に就きたいと考えていたので、Webエンジニアとして働けるところを志望していました。
正直なところムーブは数多く応募した会社の一つで、会社の特徴や強みなどは面接日時が決まってから調べるようなノリでしたが、ムーブの開放的な雰囲気に感銘し、ぜひここで開発に取り組んでみたいと感じたのを覚えています。エンジニア主導の考え方・仕事の進め方や、それに紐づいた働きやすさにも惹かれました。
仕事と私生活が相容れないものではなく、人生を充実させるために両方が互いに高め合うような生活だといいなと考えているのですが、ムーブは自分にとってそれを実現するためにいい環境です。気づけばもうすぐ入社3年になります。周りはそれぞれキャラが濃く、面白い人たちが集まっている会社です。
多くを得たプロジェクト
現在はHTMLメールエディターの開発案件に参加しながら、自社サービスであるタメルメとコーポレートサイトを運用しています。
HTMLメールエディター案件では、ユーザーにとってかなり自由度の高いエディターを目指していて、クライアントからの期待値が自分の実力よりはるかに高く、入社以来もっとも大変な毎日になっています。ただ、忙しい分多くの反省点と学びがあり、すごく手応えも感じています。
技術面で、Puppeteerというライブラリを使用してHTMLメールのキャプチャを取得する工程で、かなり試行錯誤したことが記憶に新しいです。
もともとはまったく別の方法を考えていましたが、あるスタイルだけ別のものに置換されることや、処理に時間がかかりすぎるなどの問題が生じ、方針転換しました。Puppeteerには起動のオプションがたくさんあり、導入にかなり時間がかかりましたし、プロセスが突然落ちてしまうこともしばしばあり、慣れるまでは大変でした。
技術面以外では、タスクが立て込んだ時、プロジェクト全体が見通せなくなることがよくありました。要件や仕様、方向性を見失いがちになり、今しなくてもいいタスクに時間をかけてしまったり、レビュー後に仕様の間違いが判明したりしました。機能追加や修正を早く反映させたいがために、コードレビューのための説明文を疎かにしたことも多々あり、その度にレビュワーである方々に迷惑をかけていました。タスクを複数抱えている状況であっても、レビューしてほしい内容を的確かつ時間をかけずに明文化するのに苦労しました。タスクの優先順位に対する意識やプロジェクト全体を俯瞰して見ることの大切さを、この案件を通して学びました。
推進力・技術力のあるエンジニアを目指して
まだまだ力不足ですが、フロントエンドやサーバーサイドやインフラなどの隔たりなく、いつかは1つの案件を1人で任されるようになりたいです。プロジェクト全体を見渡して、様々な業務を遂行できる、視野の広いエンジニアが理想です。
ちなみに、今気になり使いこなしたいライブラリがJestとStoryBookです。
1つ目のJestについて、先述の案件でフロントエンド部分を開発する際、コード量の増加に伴うリグレッション(プログラム改修により変更箇所以外に悪影響を及ぼすこと)を多く経験しました。まだJestを使ったことはありませんが、Jestがコードの品質担保に貢献するというドキュメントが多々あるので、個人開発や今後のプロジェクトでぜひ使ってみたいです。
StoryBookは、フロントのUIコンポーネントをカタログ化できるライブラリです。多人数でフロントの開発を行うと、スタイルが増えて統一感がなくなったり、特定の操作でしか表示されないコンポーネントを気づかずに再定義してしまうことがよくあります。StoryBookを使えば漏れなくコンポーネントを確認できるので、スタイルの一貫性を維持し、冗長性を減らすことができるため、とても役に立つのではないかと思っています。
自分がリニューアルに携わった自社サービス「タメルメ」も、より多くの方々に使っていただけるよう機能改修・追加に力を入れていきたいです。