マガジンのカバー画像

OPTEMOエンジニアブログ

31
エンジニアメンバーのブログをまとめています。
運営しているクリエイター

#エンジニア採用

OpenID ConnectならGitHub Actionsでクレデンシャルを使わずにデプロイできる

こんにちは、すずきです。 セキュリティ強化を目指して、なるべくIAMユーザーの使用を最小限に抑えて、IAMロールで一時的な権限付与を行う手法を取り入れてきました。 ただ、GitHub Actionsのデプロイワークフローにおいては、AssumeRoleする際にIAMユーザーのクレデンシャル(アクセスキーとシークレットアクセスキー)が必要だと思っていて、以前その方法を採用しました。 しかし、よく調べてみたら、OpenID Connectを使うと、クレデンシャルを使わずにワ

スタートアップのエンジニアってマジでなんでもできるんだなと思った ~2023ふり返り~

こんにちは、すずきです。 M-1とSASUKEが終わるといよいよ年の瀬なんだなぁって感じっすね。 ここ一年、月イチペースでnoteの更新をやってきたんですが、技術まわりやAWS認定資格の投稿ばかりで、開発業務の内容、チーム運用、働き方など、弊社の組織に関する内容を全く投稿できていませんでした。 個人的な話なんですが、2023年はこれまで主にやっていたフロントエンドやAIまわりだけでなく、インフラ(AWS)や新しい言語(Golang)などのいろんな領域に挑戦できました。この

LangChainでLLMのリアルタイム応答を実装してみたよ

こんにちは、すずきです。 有人チャット機能のあるOPTEMOを普段開発している身として、AIによる無人チャットボットの知見ももっておいたほうがいいなぁとは常々思っていたので、ここ最近LangChainをいじっています。 ChatGPTでの業務効率化を“断念”──正答率94%でも「ごみ出し案内」をAIに託せなかったワケ 三豊市と松尾研の半年間という記事に、「返答のリアルタイム(ストリーミング)表示に切り替えられるようにした」という改善内容があったので、今回はこちらを試しに実

AWS Certified Advanced Networking - Specialty(ANS-C01)は二度と受かる気がしない

こんにちは、すずきです。 9/16に「とにかく難しい」と評判のANS-C01を受けてきました。 なんとか一発で合格できたのですが、もう二度と受かる気がしません。問題自体が難しかったのはもちろん、問題文の日本語が難解すぎて読解が苦痛でたまりませんでした。これもう国語の試験だろ。 試験結果757/1000 (合格点750)でした。 他の試験では長くても120分かけずに見直しまで終わるのですが、今回の試験では160分かかりました。48問見直しをして、最後までよくわからなかった

AWS Certified DevOps Engineer - Professional(DOP-C02)は実務向け。PAS-C01の知識は今後使わなそう。

こんにちは、すずきです。 8/6にPAS-C01、8/18にDOP-C02を受けてきました。 もはや資格コレクターと揶揄されてもしょうがない感じなのですが、DOP-C02はここ2週間仕事で取り組んでいた内容(以下)にとても近かったので、実務と勉強の両輪で効率よく勉強することができました。 AWS Configによる非準拠ルールの設定 GuardDutyによる不正操作の検知 EventBridge+SNSによる検知と通知 CloudTrailのS3ログの削除保護 C

AWS Certified Solutions Architect – Professional(SAP-C02)はWEB問題集だけ解けば普通に受かるよ

こんにちは、すずきです。 弊社内で私はAIエンジニアという肩書らしいのですが、最近インフラ周りを触る機会が多く、見事にAWS沼にハマっています。 知識確認のために毎月1つ以上認定試験を受けることにしており、今回はSAP-C02という少し難しそうな試験を受けてみることにしました。 これまで取得した認定資格(MLS, SCS, DBS, DAS, SOA, DVA)の記事もあるので、もし興味があればご覧ください(以下はDVAの記事)。 試験結果804/1000 (合格点7

GitHub Actionsでプルリク作成時にterraform planの結果を自動コメントさせてみたよ

こんにちは、すずきです。 都内の縦移動の不便さに20年以上怒りを感じ続けていたので、車買っちゃいました(買ったのはBIGなところじゃないよ)。 昔ドイツで参加した車体系の学会で、VWの発表が心に残っていたんですよね。発表していた(SPY×FAMILYのお父さんみたいにスタイリッシュな)VW技術者の思想がしっかりしていて、この人が設計している車に乗ってみたいな〜という感じでゴルフ(※車名)に手を出しちゃいました。これで毎日等々力渓谷に行けるね。 ところで、最近、アプリケー

いまさらだけどTerraformを導入してセキュリティグループの管理をコード化したよ

こんにちは、最近買った電気衣類乾燥機で人生観が変わったエンジニアのすずきです。 超楽だし衣類もフカフカ。なんで今まで買わなかったんだろう(家が狭くて置けなかった)。 ところで、最近「OPTEMO」のインフラ改修をコツコツと行っているんですが、結構手強いんですよね... セキュリティグループ(SG)だけでも見直し始めたら、一つのリソースに似たようなSGが複数アタッチされていたり...想像以上に時間がかかりました。 サービスが稼働するためだけであれば元の状態でも問題はないの

AWS Certified Developer - Associate(DVA-C02)は1週間で取れる。あと、ハイチのコーヒーにはブランデーをいれるらしい。

こんにちは、エンジニアのすずきです。 最近Code兄弟(CodeCommit, CodeDeploy, CodePipeline)を触ることが多いので、知識確認のためにDVAを受けてきました。 今回もテストセンターの土日予約が埋まっていたので、平日の午前中に試験を受けてきました。毎日9:00から働いているのですが、こういうときにフルフレックス制度の恩恵を受けることができています。 これまで取得した認定資格(MLS, SCS, DBS, DAS, SOA)の記事もあるので

超いまさらだけどバックエンド開発環境をDockerコンテナ化したよ

こんにちは、エンジニアのすずきです。 ローカル開発環境のコンテナ化…どの企業様でもされていると思うのですが、限られたエンジニア数で新機能開発に重きをおいた結果、弊社ではずっと先送りになっておりました… 先送りにした結果、dev環境とローカル環境で同じDB(RDS)を参照する状況となり、チーム開発に大きな支障をきたしてしまいました。 私は主にフロントエンドとAIまわりを担当しているため、Dockerについてはあまり詳しくなかったのですが、チーム開発の崩壊を防ぐために、以下

AWS Certified SysOps Administrator - Associate(SOA-C02)受検からの都庁散歩

こんにちは、エンジニアのすずきです。 2月から何個かSpecialty資格(MLS, SCS, DBS, DAS)を取得してきて、ようやくAWSに少しだけ詳しくなってきました。 幸いなことに、資格を取得してから自社サービスOPTEMOのインフラ改善の仕事(以下)を任せてもらえるようになり、ChatGPTのサポートも借りながら、AWSの実務経験を積めているような状況です。 RDSのパフォーマンス監視・チューニング 既存構成の可視化(Havaの導入) リソース(EC2,

モデル学習時のGPUメモリ不足(RuntimeError: CUDA out of memory)を解消した

こんにちは、エンジニアのすずきです。 GWは日本橋へ行くので、ひさびさに小洞天のシュウマイと五目焼きそばを食べてこようと思っています。余裕があったら台南担々麺も頼んじゃうよ。 ところで、BERTベースモデル(TabBERT)の学習時、入力データのサイズを大きくしたらGPUメモリ不足のエラーがでてしまうようになってしまいました。 AlgorithmError: ExecuteUserScriptError: ExitCode 1 ErrorMessage "RuntimeE

AWS Certified Data Analytics - Specialty(DAS-C01)の受検感想と新宿のアイスバイン

こんにちは、エンジニアのすずきです。 久々にスーパードンキーコング1をやっているのですが、「ふぶきの谷」がクリアできません(2, 3の方が難しいのは確かなんだけど、1はセーブポイントまで残機がもたないところが鬼畜だよね)。 ドンキーコングの傍ら、2023/4/8にDAS-C01を受けてきました。 データ分析の分野には当初全く興味がなかったのですが、AWS Cloud Questという公式ゲームのハンズオンで面白さを感じ、試験自体も簡単そうだったので、今回受検することにしま

BERTベースモデルのFine-TuningにTrainerクラスを利用する

こんにちは、エンジニアのすずきです。 以前、IBM論文の参考コードでTabBERTモデルの事前学習を行い、Fine-Tuningについては自作コードを実装しました。 自作コードで一応Fine-Tuningをできるようになったのですが、F1スコアなどのメトリクスを計算するだけでも面倒さを感じていました。 事前学習のときと同様にTransformersのTrainerクラスを使えればメトリクスも簡単に出せるのに...といろいろ調べてみたところ、下流タスク用のヘッドをボディ(