SMARTCAMP Engineer Blog

スマートキャンプ株式会社(SMARTCAMP Co., Ltd.)のエンジニアブログです。業務で取り入れた新しい技術や試行錯誤を知見として共有していきます。

Vue3に完全移行した話 〜移行ビルドからの脱却〜

何をしたのか? やったこと 前提 0. ねんのためステップ1〜10を確認 1. braking changes x eslint 1-1. eslint-plugin-vueの導入 1-2. 自動修正 1-3. ルールの一時緩和 1-4. 残りを手動修正 2. Vue依存パッケージのアップグレード Nodeをアップグレードして…

マネーフォワードからこんにちは!ジョインして感じたスマートキャンプの魅力と、入社直後の取り組み7個

ご挨拶 これまでの経歴と出向に至るまで 新卒でSIerへ マネーフォワードへ転職 そして、スマートキャンプへ出向! スマートキャンプにジョインしてみて ユーモア溢れる開発チーム オンボーディングでの有り難いサポート 2ヶ月半でYATTEKITAこと チームジョイ…

新卒で入社したエンジニアの半年の振り返り

はじめに 私の仕事内容 新卒入社から半年間の振り返り キャッチアップが追いつかず、タスクが遅れる 心がけたこと 年齢差による意見の遠慮 心がけたこと ドキュメントによるコミュニケーションの難しさ 心がけたこと 成果 まとめ はじめに こんにちは!開発…

バージョンアップしんどい!!って思ったから仕組み化した話

どうも、職人です! バージョンアップ?なにそれおいしいの? バージョンアップの何が辛い? メインタスクとの兼ね合い そのライブラリがどこで使用されているか バージョンアップをして問題ないだろうか バージョンアップするときの面倒な作業 どこを効率化…

エンジニアからデータアナリストへ転職したぼくの1年半のふりかえり

まえがきのまえがき まえがき 入社半年編 期待と不安の滑り出し BIへの不信感を払拭 既存を大事にしすぎた問題 各部署からのお使いクエスト 転職を機に新しくはじめたこと 半年のふりかえり SMARTCAMP AWARD 入社1年編 淡々とお仕事をこなす生活 エースの喪…

FourKeysを横へ広げる

はじめに 前提 FourKeysとは FourKeysを横に広げるとは 横に広げるために必要な要素 橋を作ってくれる協力者 FourKeysの目的を明確にする FourKeysが与える身近な効果を伝える FourKeysへの取り組みをしやすくし習慣化する 今後目指したいところ はじめに こ…

React Hook Form と Zod で非同期バリデーションがしたいの!!

遭遇してしまった問題 解決策 おわりに こんにちは!! BOXIL SaaSのエンジニア兼テックブログチームの平社員をしているブラーバです。最近は働きが認められ、テックブログチームで確固たる地位を築きつつあるとかないとか...。 今回は以前公開したReact Hook …

Mojo🔥でllama2を実行してPythonと速度比較するモジョよ

挨拶 初めに 対象読者 実行環境 Mojoとは 現状のMojoの導入方法 MojoとPythonの実行時間の比較 Pythonのコード Mojoのコード 結果 Local LLMの実行 llama2.py llama2.c llama.mojoの実行時間の比較 llama2.py(Python) 実行コマンド 生成された文章 llama2.c(…

RSpecの実行時間を短縮した話

RSpecの実行時間が長くなってきており、開発に少し支障をきたすようになってきました。 そこで開発の生産性を上げるべく、RSpecの実行時間短縮を試みたので、今回は、こちらの件についてお話ししたいと思います!

最適なRailsアプリケーションのディレクトリ構造を目指して

はじめに 対象読者 理想のディレクトリ構成 取り組んだこと リファクタリングに至った背景 チームで決めたこと、行ったこと 現状把握 理想の構成 トライ 結局シンプルがいい デザインパターンを積極的に取り入れた結果 取り除いたもの Interactor Facade Que…

React Hook Form、Zod、Recoil を組み合わせたフォームを作る!

スマートキャンプでBOXIL SaaSのエンジニアをやってます職人こと袴田です! 今回は新規会員登録の画面に関してUI/UXの向上のための施策を対応したことについて紹介します。

フロントエンドテストのはじめかた

はじめまして、もしくはまたお会いしましたね。BALES CLOUD(以下BC)エンジニアのてぃがです。 BCでは、最近フロントエンドのテストを始めました。 また、個人としても社内でフロントエンドのテストの普及啓蒙活動をやっております。 今回はこれらについて…

Rails+ReactプロジェクトでWebpackからViteに乗り換えたら、開発が劇的に快適になった話

はじめに なぜViteに移行したか 導入方針 開発環境に導入 vite側の作業 詰まったところ vite自体に付属するmanifestオプションを使用すると、manifest.jsonの形式が大幅に変わってしまう 同じスタイルを複数のエントリーポイントで読み込むとファイル名が変…

共通ID基盤開発の裏側:OIDCとビジネス要望のギャップ

はじめに 対象読者 主なキーワード 共通ID基盤プロジェクトについて なぜプロジェクトを開始したのか? 共通ID基盤構築の要件 共通ID基盤の技術選定 認証基盤に関連する技術群 どの技術を使うべきか? アーキテクチャの検討 隠れたサービス要件の発覚 サービ…

プロダクトバックログをNotionで管理して生産性が爆上がりしたかもしれない話

弊社テックブログチームのスクラム月間(勝手に言ってる)ということで、プロダクトバックログの管理をNotionで行っているお話をしようかと思います。

最近のスプリントプランニング事情 -ちょっとした改善事例集-

スプリントプランニングとは 最近のBOXIL SaaS開発について 先に結論 施策 1.ポモドーロ・プランニング ポモドーロ・テクニックとは やってみた感想 おまけ(ChatGPTのプロンプト) 2.ファシリテーター・書記の順番交代制 ルーレット 3.内職を我慢する 4.お…

新卒エンジニアが経験した研修とスクラムの世界 | 2023年度新卒入社エントリ

ご挨拶 はじめまして! 2023年4月よりスマートキャンプに23卒として入社しました小宮です。 社内ではリーブスと呼ばれています。学生時代のインターンでもジェネシスと呼ばれていたので、なんかカタカナ系のあだ名が多いです。 自分について文章を書くのは苦…

ド田舎の高専生が気づいたらWebエンジニアになっていた話

社内では**マリ緒**と呼ばれていますがもはや面影すら残ってないですね。あまつさえ最近は「マリ緒っち」や「マリリン」という派生形で呼ばれるようになってきたのでもう訳がわかりません。 今回は自分語りする機会を頂けたので、思う存分語りたいと思います…

リモートHQでリモートワークの生産性とQOLが爆上がりした話

※タイトルとアイキャッチはAIに考えてもらいました。 はじめに こんにちは。VPoEの米元です。 スマートキャンプでは2023年3月に「リモートHQ」というサービスを導入しました。 リモートHQは、在宅勤務の環境を始めとしたリモートワーク支援のためのサービス…

プロトタイピング開発でハッピーになった話をする feat. Zoom Phone

今回、BALES CLOUDとZoom Phoneの連携をすることになりました。 調査・実装等々行いましたので、この件についてお話ししたいと思います。

後任者を救うための究極引き継ぎドキュメント

ドキュメントを残さないといけないことはなんとなくわかる。 なのでNotionなりkibelaなり社内で使うツールにちょこちょこドキュメントを残していたりもする。 だけどさ、残したドキュメント見られてます?使われてます? 本当に大事なことは自分が理解できる…

「仕様」のレビューをPRでしていませんか? 〜Design Documentが解決したスパゲッティコードとの向き合い方〜

はじめに プロダクトの概要と開発背景 BOXIL EVENT CLOUD について イベクラの開発背景 最初の課題 Design Documentとは GoogleのDesign Doc イベクラチームにおけるDesign Document フォーマット Design Documentがチームにもたらすもの 手戻りが発生しない…

Ruby 2.7に飽きたから秋田からRuby 3移行した話

Ruby のロゴについて 自己紹介 Ruby 3への移行 脱Refile 過去の先駆者 開戦 問題その1 画像のURLがS3のエンドポイントになっている問題 問題その2 移行対象のレコードが大量問題 問題その3 画像が荒くなる問題 幾多の障害を乗り越え その他gemの更新 ついに…

そうだ、京都開発拠点に行こう!

はじめまして! 2023年1月付でスマートキャンプ株式会社に中途入社した松下大祐です。 京都にオフィスを構える京都開発部に所属し、ソフトウェアエンジニアとして働いています。 今回は私の入社エントリとして、スマートキャンプへの入社理由や仕事内容につ…

後で楽できるTerraformの書き方(※ただし書くときは辛い)

はじめに ざっくりしたシステム構成の紹介 全体の構造 設計のポイント コーディング規約 上の階層を見に行かない 変数名は全体でユニークにする 変数のデフォルト値は設定しない main, outputs, variables 以外のファイルを原則置かない ポリシードキュメン…

SES企業出身者が競技プログラミングで転職して頑張ってる話

はじめまして。ビジネス向けのSaaS比較サイト『BOXIL SaaS』のエンジニアをしていますJinJin(三浦)です。昨年12月にSESをメインで行っている企業からスマートキャンプに転職しました。 この度、テックブログの執筆を担当させていただけることになりました…

Vue3にアップグレードしてフロントエンドを改善した話

vue3-migration-improve-frontend はじめまして! BALES CLOUDエンジニアのえーす(井上)です。この度、BALES CLOUDで長年使ってきたVue2から卒業し、Vue3を導入した状態でリリースできました。今日はこれについてお話できればと思います。 やったこと なぜ…

エンジニア採用サイトをリニューアルした話

挨拶 こんにちは!私はBOXIL SaaS開発エンジニアのハヤシ(ぱずー)です。 前回、私がスマートキャンプで成長したエピソードを紹介しましたが、今回はエンジニア採用サイトのリニューアルに携わったので、それについて紹介します。 最後まで読んでいただけると…

BERTとSageMakerによる検索アルゴリズムの実装とデプロイ例の紹介

概要 スマートキャンプでエンジニアをしている佐々木です。 本記事では、自然言語処理モデルを用いて新規サービスを作れないか試行錯誤した話をしようと思います。 今回は精度の良い検索はうまく実装できませんでしたが、機械学習モデルをインフラで動かす流…

Google APIを利用するSlack botの認可周りの課題をフロントの実装なしで解決しちゃった話

どうもこんにちは。22卒としてスマートキャンプに入社したbraavaです。 普段はBOXIL SaaSというtoB向けのSaaS比較サイトの機能開発・運用をしています。 近頃はM-1グランプリやワールドカップで多少寝不足気味でしたが、今回はそんな自分が社内で利用されて…