HIRO Tracks

山根正大です。ソフトウェアエンジニアが日々学んだ知識を発信します。

【Querydsl】OneToManyなテーブルから必要なカラムだけDTOにマッピングする(transform,groupBy)

これは何? hiro-tracks.net こちらの記事の続きです。 本記事では、上記記事の「必要なカラムだけSELECTする」に加えて、OneToManyな2テーブルに対して飛ばしたJONクエリの結果を、自作DTOにマッピングする方法をお伝えします。 クエリチューニングの一環と…

【Querydsl】必要なカラムだけDTOにマッピングする(Projections.constructor)

これは何? queryDSLで「SELECT * FROM...」するのではなく、必要なカラムだけ取得する方法をお伝えします。 クエリチューニングの一環としてでSELECTする対象を絞り込む時(Key LookUpを減らして実行計画改善する時とか)に便利なTipになってます! これは…

【書評】コミュニケーション力改善したいので「エンジニアがビジネスリーダーを目指すための10の法則」を読んだ

これはなに? この度「エンジニアがビジネスリーダーをめざすための10の法則」という本を読みました。 要約すると、この本は「エンジニアが目線を上げて、マネジメント層と生産性の高い会話をするためには?」という観点で、マインドの変え方やノウハウがま…

【反省】AWS Batch Clientのメモリ解放を忘れて処理が遅い【AWS SDK for Java v2】

これは何? Kotlinで書いたAPI内からAWS Batchを起動するために、sdk-for-javaを使って処理を書いていました。 sdk-for-javaはお手軽にバッチ起動ができて大変便利なのですが、リソースをちゃんと解放できるように書いてあげないと性能劣化の原因になります…

マルチプロジェクトのSpringBootで、Docker + Flywayによる使い捨てDB環境を作る

これは何? マルチプロジェクト(gradle)のSpringBootアプリを触っている 仕事外の技術検証で軽〜くDB使いたい オンメモリDB(H2とか)じゃなくてガッツリOracleとかSQLServerとか使いたい 上記のような時に、いちいちLocalPCにSQLServerをインストールしたくな…

2023年目標宣言【DBと英語とブログ】

これは何? 山根が2023年度の目標を宣言する記事です。 これは何? スキルアップ加速させたいんや 1. DBスペシャリスト資格を取る なぜやるのか:技術面でストロングポイントを持ちたい 今の技術レベル感てどうなの? バックエンド領域 インフラ領域 フロン…

【良い負荷試験とは何か?】「AWS負荷試験入門 」を呼んで学んだことまとめ

はじめに 負荷試験の知識を深める為に、本「Amazon Web Services負荷試験入門 クラウドの性能の引き出し方がわかる」(以下、「Amazon Web Services負荷試験入門」)を呼んでみることにしました。 自分の思考整理と、この記事に辿り着いて下さったみなさんの…

【振り返り】「選択と集中」によりAndroid案件の副業を撤退します

はじめに 副業案件(Android)に入らせてもらっていたのですが、この度撤退することにしました。 案件メンバーの方には大変お世話になりました。 5ヶ月と短い期間ではありますが、良い体験になったので振り返りを行いたいと思います! 目次 はじめに 振り返り…

DateTimeFormatter.formatで型「M/d」指定すると「01」でも「1」でも変換可能

これは何 java.time.DateTimeFormatterのString->日付型の変換が結構柔軟で助かった話です! 型に「yyyy/M/d」と指定すれば、例えば日付が「01」でも「1」でも型変換してくれるようになります。 何がええんや?? 「2022/1/1」と「2022/1/01」どちらも変換して…

【ISUCON9】dockerのmysqlにmysqldumpslowがなくてLocalで触るのやめた

これは何? 【性能】ISUCON9予選のLocal環境構築(DB部分:Docker-Compose) - HIRO Tracksの続きです ISUCON9をLocal(DB部分だけDocker)でやろうとしたけど、色々面倒なのでやめることにしました。 今後はAMIからAWSにEC2環境作ってやっていく予定。 目次 …

【性能】ISUCON9予選のLocal環境構築(DB部分:Docker-Compose)

これは何? 性能周りの知見向上のため、ISUCON過去問を触ってみたい!と思い至りました。 本記事はそのための第一段階としてLocalで環境構築してみた時の備忘録です! Localでアプリ立ち上げ + ベンチマークを回す、ことをゴールとしています。 「推測するな…

【副業】freee開業でオンラインで開業してみた

これは何? エンジニアとして副業を始めたので、青色申告を狙って開業届・青色申告申請書を提出した時の話です! 開業届を出す時期について「ミスったな...」と思うところもあったのでそれも含めて備忘録。 これは何? 開業届提出のきっかけ 利用した/してい…