ひととなり
- 1987年生まれ、岐阜県在住
- 妻と子ども1人の3人家族
- 趣味は麻雀。最近はネット麻雀で打っています
経歴
- Webシステム開発企業ソフトウェアエンジニア
- 株式会社ロココソフトウェアエンジニア
- 株式会社システムリサーチプログラマ(SES)
資格
- Oracle Java Gold SE
- 応用情報技術者
- AWS SAA/CLP
- LPIC-1
- G検定
- ORACLE MASTER Bronze
期限がある資格は全て切れてます。
好きな働き方
- CI/CDや自動化など、チームの開発体験を良くする作業が好き。
- ドキュメント同士のつながりを意識した構造で書くのが好きです。Obsidian、Cosense、Traceryのような、リンクで知識をつなぐ考え方に好きだなー。みんな使ってほしい。
- 定期的に環境が変わるほうが好み。同じことの繰り返しは少し苦手です。
できること
- バックエンド
- Webサービスのサーバー側を設計から運用まで任せられます。設計経験については、下の「やってきたこと」に書いてます。最近はずっとPythonで書いています。PHPやJavaの業務経験もあります。バックエンドがいちばん長く続けている領域です。
- 上流工程と設計
- 顧客へのヒアリングで要望を聞き取り、要件定義書と基本設計書にまとめるところまでを一人で進められます。下の「やってきたこと」の連携基盤の要件定義も、この流れで進めました。
- データ設計とSQL
- 正規化を意識したテーブル設計と、実行計画を見ながらのクエリ改善ができます。PostgreSQL、MySQL、Oracleを使ってきました。
- チームリード
- チームのタスクの割り当て、進捗の可視化、定例会議の運営を回せます。プロジェクトリーダーの経験があります。1人から5人に増えたメンバーの受け入れも回しました。
- インフラ
- CloudFormationでAWS環境を組み、サービスを立ち上げられます。やったことないけどTerraform/CDKも使えると思います。
- フロントエンド
- React、Next.js、TypeScriptで、ひと通り動く画面を作れます。専門ではないので、凝ったUIは期待しないでください。
やってきたこと
- 複数の投稿元から受け取った情報を、別のシステムへ自動で流す連携基盤
- 投稿元はX、RSS、Instagram、メールの4種類で、接続先は10件弱です。受け取り方はそれぞれ違います。XはストリーミングAPIに常時接続し、RSSとInstagramは定期実行のバッチで取りに行き、メールはAWSのメール受信サービスで受けます。量は1日に数十件と多くないので、難しさは規模ではなく、受け取り方の違いと4年間運用し続けることにありました。受け取り口だけを投稿元ごとに分け、その先の加工と保存はSQSとSNSでつないだLambdaの共通の流れに乗せると決めました。条件に合う情報だけを別システムへ流し、保存した情報は管理画面で確認できます。チームは1人で始めて最大5人になり、増えたメンバーの受け入れも自分で回しました。
- 口座開設の申込を取り込み、分担して審査し、結果を別システムへ渡す業務システム
- 申込は相手先から定時にzipファイルで届きます。バッチで取りに行き、解凍したCSVをデータベースに取り込む流れを設計しました。オペレーターが画面で点検して結果を保存すると、結果に応じて外部連携用のファイルを作り、scpで別システムへ転送します。画面とテーブルは合わせて数十で、構成はEC2とRDSだけです。月に数百件の申込を、オペレーターが分担して審査する業務です。リリース後は本番で起きた不具合を切り分けて直しました。
苦手なこと
- 深い知識の追求
- 仕事ができる水準に達すると、そこから先にレベルアップするモチベーションがなくなる傾向があります。結果として、広く浅くなりがちです。
- デザイン
- 知識が少なく、UIをゼロから作るのは苦手です。本当に難しい。
- 低レイヤー
- データベースサーバー自体の構築やチューニングは専門外です。
- 要件定義の進め方
- 要件定義を雰囲気で進めてしまいがちです。要望を要件に落とし込むときの出力の型や、関係者との合意形成の進め方は、よりよい方法をまだ探しています。これも本当に難しい。
好きではないけれど、やっていること
- 物事を前に進めるために必要なことは、自分から引き受けます。その方が結果的に仕事が楽になるんだよね。
- 雰囲気で進んでしまいそうな場面では、目的や背景を関係者で共有し、決めるべきことを決めて、認識のずれが残らないようにしています。これも仕事が楽になるのでやってる。