7474

Logo

koudenpa's profile.

View the Project on GitHub 7474/7474

職務経歴

紹介文

ITのソフトウェアエンジニアです。 マイコンからクラウドまでソフトウェア全般を広くフォローしています。

マイコン、クライアントサーバ、Webサービスサーバ/フロント、スマホ、IaCなど、それぞれそれほど深く修めてはいませんが、引き出しが多いことが強みです。

Blogのカテゴリに履歴をまとめています。 適宜参照ください。 https://koudenpa.hatenablog.com/archive/category/%E5%B1%A5%E6%AD%B4

やや砕けた志向は https://koudenpa.hatenablog.com/entry/2020/07/16/000057 に詳しいです(少し前の記事ですが大きくは変化していません)。

このさきやってみたいこと

ITエンジニアとして一生を過ごしたいです。

特に具体的に何かをしたいわけではありませんが、常により良いエンジニアリングを模索し、価値のあるIT活用を創出していきたいと考えています。

領域は問わないのですが、主体的に既存の課題解決や、新規の価値創出ができる環境で仕事をしていきたいです。

職歴

入社 退社 社名 備考
2018-11   株式会社はてな https://hatenacorp.jp/
2017-11 2018-10 株式会社ウフル https://uhuru.co.jp/
2015-04 2017-10 DMM.com Labo https://dmm-corp.com/ (DMM.com Laboは吸収合併済
2008-04 2015-03 株式会社ネッツ https://www.nets-web.co.jp/

社内外・在学中のプロジェクト

日々の遊び(IoTやマネージドサービス)

2018-07 ~

株式会社ウフル、DMM.com Laboの担当領域にIoTがある。 業務、プライベート両面でIoTの実現に当たっての調査検討、PoC作成などを行っている。

など、ソフトウェアエンジニア の手が届く範囲は一通り抑えている。

近々では、デバイス上のアプリケーションを管理、運用するマネージドサービスとそれに対応する軽量OSが充実しつつあるので、それらの実際的な活用方法を試行、習得しておきたいと考えている。

一部の事例はBlog記事などで発信している。

Webサービス開発・運用

2017-07 ~

【要素技術】

FuelPHP, nginx, php-fpm, CircleCI

【プロジェクト概要(目的・人数・体制など)】

Play By Webというユーザー参加型コンテンツを提供するWebサービスの開発、運用を2018年7月現在進行形で行っている。 小さいチームでサービスを提供しており、多少の可変はあるが全体で5名前後。 システムの開発、運用を担当するエンジニアは1~3名程度。

【プロジェクトにおける自身の役割】

サービスの責任者の知人として、作業時間は短めだがシステムの開発、運用の一切に関して何かあったら最終的にどうにかする、といった立場で関っている。 (金銭は受け取っています)

当初開発時おこなった作業には以下がある。

継続実施している作業には以下がある。

【当時の背景/抱えていた課題等】

初期開発時にはフリーランスのエンジニアに主に開発を行ってもらっていたが、業務システム開発畑の方でWebサービスの定石には疎く、不特定多数のユーザーからのアクセスに対してのパフォーマンス(N+1問題など)やUXを備えられていなかった。

【課題に対して自身が発揮したバリュー及び成果】

Webサービスのデファクトスタンダードを適用できる体制を整えるようにアドバイス、アプリケーションの機能を設計していった。

例:

  1. 当初Webデザインはイラストレータとエンジニアのみで行う予定だった
    • それでは良いUXを提供できないためWebデザイナーに依頼するようにした
      • スマートフォン向けのレイアウトは提供しない予定だった
    • 結果として、レスポンシブな視認性、操作性のよいWebデザインとなった
    • ユーザーからの評判は良く、UAもスマートフォンの割合がサービス提供開始前より相当量多かった
  2. SNSでのコンテンツ共有を考慮していなかった
    • サービスの属性上、ユーザーはTwitterでの交流率が高いため、Twiter Cardを構成した
    • ユーザーからの評判は良く、後追いで他の競合サービスも同様の構成を行うようになった

また、大きな問題なく、省力でWebサービスを継続運用できている。 これは妥当な初期開発、サービスインフラ構築、運用を行えたからであり、それが最大の価値であると考えている。

他、印象的な出来事はBlog記事として発信している。

Webサービスのオンプレミスからクラウドへの移行

2017-03 ~ 2017-10

【要素技術】

AWS, Terraform Ansible, CircleCI

【プロジェクト概要(目的・人数・体制など)】

オンプレミスの仮想マシンにホスティングしていたWebサービスをクラウド(AWS)に移行した。 自分を含め2名体制で、複数の中小規模サービスの移行を行った。

【プロジェクトにおける自身の役割】

移行するに当たって必要な作業の洗いだしから、実現手法の検討、実施まで実作業全般を担当。 もう一人のメンバーとAWSのSAと相談しつつ、移行を主導した。

検討、実施した内容の例: 基本的には移行前システムをオンプレミスと同様に構成したクラウドに載せ替えただけだが、大量、大容量のユーザーコンテンツを持っていたため、それらはファイルシステムからオブジェクトストレージに移管した。 (2018年現在では、アプリケーション変更のリスクや手間由来でEFSへ載せ替えを選択したかもしれません)

同様にサブシステム間のインタフェースがファイルシステムベースだった点も、オブジェクトストレージとメッセージでの接続にすることによって、対障害性を向上させるなど、クラウドに適応するための最低限のアーキテクチャ変更を行った。

【当時の背景/抱えていた課題等】

相当な期間機能拡充を含むサービス提供されていたシステムであるため、相当量の技術的負債(成果の項に記載)が蓄積していた。

【課題に対して自身が発揮したバリュー及び成果】

クラウド移行はそれらの負債を返済する良い機会であると考え、可能な範囲で返済を実施した。 一部を抜粋する。

例:

  1. ステージング、本番環境の差分があり、それ由来で妥当なステージング検証が行えていなかった
    • 必要十分なIaCを行うことで解消
    • ステージング、本番環境がほぼ同等の構成となり、環境由来での検証不備の発生を防げるようになった
  2. アプリケーションの更新時のデプロイを各サーバに手動で配置していた
    • ビルドからデプロイを自動化することで作業コスト、疲弊を軽減した
    • 10分/回程度の手作業でのデプロイが、リポジトリPush後に完了通知を待つだけとなった
    • 特に「本番を手作業する」というストレスからの解放の評判が良かった
  3. HTTPでのコンテンツ配信を行っていた
    • 常時SSL対応した
    • 後日社内の全サービスを常時SSL対応することになったが、その際には追加作業が不要だった

他、事例を一部発信した。