プロフィール

  • Webプログラマー。Go、PHP、JavaScript/TypeScriptをメインでやってます。
  • IT関連のお仕事経験は10年以上
  • テストを大事にしたい派です。システムの設計・デザイン・アーキテクチャも重要だとは思っていますが、同じくらいか、それ以上にテストを重要だと思っています。 どのような場合でも、テストの作り方を工夫すれば、テストが足かせになることは無いと思っています!!
  • インフラやデータベースは基本的なことはだいたいできますが、専門家というわけではありません。
  • GitHub:https://github.com/yrichika
    • 公開できてるリポジトリ数少ないです!😭
プログラミング言語詳細
Goモノリシック、マイクロサービスのどちらでも開発の経験があります。Gin, GORM, Protobuf/gRPC, Ginkgo, fxで使うことが多いです。
PHP最初に使ったプログラミング言語がPHPで、そこから流れでPHP/Laravelを10年近く経験しました。
JavaScript/TypeScriptReact/Next.jsの開発がメインです。
CSS/SASSBootstrap, Foundation, Tailwind, Bulma, MUI, Vuetify, etc... CSSよりもフレームワークで作ることがメインになってしまって、CSSは忘れがち、苦手な方です。このサイトのデザインから推測できると思いますが、デザインも得意ではありません。それでも、フレームワークと素CSSのごちゃごちゃの地獄も経験し、目的のレイアウト作成は常になんとか達成しています
SQL複雑な処理をまとめた、凝ったSQLを書くより、パフォーマンスと可読性を考えたSQLを重視しています。複雑な処理はアプリケーション側に処理させることを意識しています。ORMを使う機会の方が多いので、時々忘れます😭
シェルスクリプトちょっとした作業の効率化や、インフラ構築のまで幅広く使います。近年はDockerコンテナ環境の構築や、CI/CDのスクリプトを書くことも多いです。
インフラ/クラウドなど詳細
AWSECSを使ったWebアプリにあるよくある/基本的な構成(ALB, RDS, ElastiCache, S3, CodePipeline, etc)を1から構築できます。他のリソースを使った環境も数多く経験。
TerraformAWSで自分ができる範囲ならだいたいできます(IAM権限あたりで時々つまずく)。フォルダ分けは細かくしてリソース管理する方です。
GitHub Actionsさまざまなプロジェクトの要望に答えて、CI/CDの構築経験があります。ワークフローは、できるだけシンプルに保つように心がけています。
Docker開発用のローカル環境で扱いやすいものから、軽量な本番環境のイメージまで、幅広く構築できます。
LinuxEC2の設定から、Dockerイメージの構築まで幅広く経験。オンプレのインフラの業務をしていたこともあるため、OSやセキュリティの設定もできます。
設計・その他詳細
テスト駆動開発テスト重視派です。テストによって、モノ、考え、処理などの単位をちょうどよく分けることもできるため、設計としても使っています(複雑・コード量が多いテストになってしまうのは設計が間違ってるかも!)。できるだけテスト書きたいですが、「テストを書く時間がない!」という事情も分かります😭
ドメイン駆動設計多くのプロジェクトで、ドメイン駆動設計とクリーンアーキテクチャをベースにプロジェクトを構築しました。
データベース設計は実務で頻繁に行っています。パフォーマンスチューニングの経験もあります。といっても、パフォーマンスも考えて設計しているので、それほど後から調整した経験はありません。
資格詳細
Oracle Certified
Java Programmer, Gold SE 11
知った気になっていたJavaをちゃんと理解したくなり取得しました (2022/4)
AWS Certified
Cloud Practitioner
AWSの全体を把握するために勉強しました(2022/4)。全体を把握した後は、実践で時々ECSでシステム作ったりしています。
TOEIC920点。学生のころ(2005年と大昔ですが)に取得しました。5年ほどアメリカに住んでいました。
LPIC-3 Coreインフラに主に関わっていたので、LPICを取得(2013年)しました。
CCNAこちらもLPIC同様インフラに関わっていたので取得しました(2013年)。今はCisco製品まったく触ることないですが、AWSのVPCの理解に役立っています。