タグ

ブックマーク / tech.smartcamp.co.jp (94)

  • 近況をおもいおもい話す「最近のワイ」という試み - SMARTCAMP Engineer Blog

    スマートキャンプ、エンジニアの瀧川です。 弊社では毎週火曜日に30分間、エンジニア全体MTGがあり、全体やチームの動き、採用やイベントについて話すようにしています。 その中に「最近のワイ」というコーナーがあります。 (こちらに詳細が書いてあります) YWTで振り返るエンジニアリングマネージャーになってからの1年間 - SMARTCAMP Engineer Blog これは直近の数ヶ月で、「やったこと」「はまったこと」「わかったこと」「次やること」を振り返り、共有する試みで、弊社エンジニアの伝統となっています。 今週が私の担当だったのですが、失念していて準備を忘れるというインシデントが発生したため、反省の意を込めてブログで公開させていただきます。 「最近のワイ」自体はとてもいい試みなので、参考にしていただければ幸いですし、弊社の雰囲気も感じていただければと思います! 最近のワイ やったこと

    近況をおもいおもい話す「最近のワイ」という試み - SMARTCAMP Engineer Blog
  • BOXILの運用を支えている3つの監視ツールについてインターン生が紹介します! - SMARTCAMP Engineer Blog

    皆さんこんにちは! 21卒の内定者として現在BOXIL開発チームでインターンをしている関口です! 私は今年の4月からスマートキャンプでインターンをしていますが、このインターンを始めるまで、業務としてプロダクトを開発したことはありませんでした。 業務としてプロダクトを開発するようになってから、自分が今まで使ってこなかった開発手法、技術、サービスがたくさんあるということを知りました。 今回のブログでは特に最近勉強になったBOXILの運用を支える監視ツールについて紹介していきたいと思います。 監視をおこなう理由 BOXILで利用している監視ツールについて Mackerelとは Bugsnagとは New Relicとは 最後に 監視をおこなう理由 そもそもなぜ監視をおこなう必要があるのでしょうか? 監視をおこなう理由を一言で表すなら 「システムを安定して稼働させ、稼働効率を上げるため」です。 ア

    BOXILの運用を支えている3つの監視ツールについてインターン生が紹介します! - SMARTCAMP Engineer Blog
  • 20卒未経験エンジニアが研修でVue.jsに自信を持った話 - SMARTCAMP Engineer Blog

    スマートキャンプの20卒エンジニアの高砂です! 新卒入社後、スマートキャンプでは2週間の全体研修と1ヶ月のエンジニア研修に参加しました。 記事では、後者のエンジニア研修について紹介させて頂きます! 研修目的 「一定以上のレベルで実務に貢献できる技術力」を身につけること OJTではない分、目指すレベルは高く 研修内容 1ヶ月でAsanaを再現 実際の開発結果 研修による成長 Vue.jsでの開発に自信が持てるように 質問・相談の質が向上 研修を踏まえて今後どうするか 習得した技術を中心に事業へ貢献 質問・相談はより具体的に その機能の将来を考えて設計・開発 最後に 宣伝 研修目的 「一定以上のレベルで実務に貢献できる技術力」を身につけること ベンチャーでは「OJTで学んでいく」というのも一般的です。 しかし私の場合は先輩社員と相談した結果、研修中はメンタリングをして貰いながら実務とは直結し

    20卒未経験エンジニアが研修でVue.jsに自信を持った話 - SMARTCAMP Engineer Blog
  • VercelとHerokuで手を抜きながらはじめる個人開発 - SMARTCAMP Engineer Blog

    こんにちは、BOXILの開発をしている徳田(@haze_it_ac) です。 今回は業務と少し離れた話をしてみます。 はじめに みなさんは仕事以外でもWebアプリケーションを作っていますか? 作りまくっている人も、仕事以外ではコードを書かない人も居るかと思います。 私は気になったライブラリを見つけたり、こういう実装ってできないかな?と思った際に、簡単なWebアプリケーションを作って試しています。 この記事ではその中で、ゴールデンウィーク中に "簡単に作れて、運用が楽な SPA/SSR + API Server 構成の小さなWebサービス" を考えて試した際の構成と、作成手順を紹介します。 サンプル 画面 https://blog-sample-fe.now.sh/ 見た目が雑で申し訳ないのですが、サンプルとして 会員登録 ログイン 会員ページ ログアウト 機能を実装したものです。 構成 全

    VercelとHerokuで手を抜きながらはじめる個人開発 - SMARTCAMP Engineer Blog
  • KubernetesのSecretをKMSと連携して管理する - SMARTCAMP Engineer Blog

    スマートキャンプの入山です。 Kubernetes(k8s)を運用されている方々は、Podに受け渡す機密情報をどうやって管理していますか? k8sでの機密情報の管理といえばSecretリソースが一般的ですが、Secretリソースを管理する上では以下のような課題に悩む方が多いのではないでしょうか? SecretはBase64エンコードのみなので、内容が確認できれば簡単にデコードできてしまう SecretリソースのマニフェストにBase64エンコードのみの機密情報を含むため、GitHubなどにそのままコミットするのは危険 これらの対策として、kubesecやSealed Secretsなどを利用して暗号化を行う方法が主流だと思いますが、今回は外部のKMSなどに保存した機密情報をk8sに直接受け渡すことが可能なKubernetes External Secretsについて、EKSとAWS Sec

    KubernetesのSecretをKMSと連携して管理する - SMARTCAMP Engineer Blog
  • Vue.js 3 のベータ版がリリースされたので予習してみる - SMARTCAMP Engineer Blog

    こんにちは!スマートキャンプでエンジニアをしている中川です。 いきなりですが、つい先日待望の Vue.js 3.0.0 beta がリリースされました! We just released Vue 3.0.0-beta.1! Here's an overview from @youyuxi on the status of 3.0 core and official tools & libraries: https://t.co/7TP5ZMtjK4— Vue.js (@vuejs) April 16, 2020 ステータスは beta なのでいま2系からアップグレードすることに抵抗はありつつも、待望の新バージョンなので内容が気になる・試してみたい方も多いのではないでしょうか。(かくいう私自身がそうです) そこで今回の記事ではVue.jsの今後のロードマップを紹介して、何がいつリリースされる

    Vue.js 3 のベータ版がリリースされたので予習してみる - SMARTCAMP Engineer Blog
  • リモートワークによる開発チームの課題をFigmaで改善した話 - SMARTCAMP Engineer Blog

    スマートキャンプのデザイナー/エンジニアのhaguriです。 弊社では3月からリモートワークに移行しています。 スマートキャンプでは開発チームが、「BOXILチーム」と「Biscuetチーム」の2つあります。 以前の記事では、リモートワーク中の開発チームの様子や、行っているコミュニケーションの工夫などを紹介しました。 tech.smartcamp.co.jp 今回は、2ヶ月弱リモートワークをすることで見えてきた「Biscuetチーム」内の課題と解決に向けて試した方法について紹介します。 発生した課題「認識のズレ」 改善1:共通で呼べる名前をつける 改善2:必須確認事項をいつでも見れるようにする 改善3:アイテムごとにUIを作成して、UIを軸に話し合う 改善4:KPTを付箋のようにやる 「認識のズレ」をビジュアルコミュニケーションで改善 発生した課題「認識のズレ」 通常では、あるトピックにつ

    リモートワークによる開発チームの課題をFigmaで改善した話 - SMARTCAMP Engineer Blog
  • プロダクトのパフォーマンスを改善するためにVue.jsの関数型コンポーネントやpropsに関する施策を行った話 - SMARTCAMP Engineer Blog

    こんにちは!フリーランスエンジニアとしてスマートキャンプに参画している芳岡です。 弊社のプロダクトであるBiscuet(https://biscuet.jp/)の開発に初期から参画していますが、サービスが世の中に展開されていく過程、チームが大きくなっていく過程を間近で見れとても興味深く思っています。 今回は、そのBiscuetで使用しているVue.jsのパフォーマンス改善を行ったのですが、そこで気づいたいくつかのポイントを整理してお届けします。 Vue.jsのパフォーマンス 関数型コンポーネント propsは、オブジェクト全体か各プロパティごとか? プロパティごとに渡す方法 オブジェクトを渡す方法 注釈 最後に Vue.jsのパフォーマンス Vue.jsでは、状態変更によって、仮想DOMが繰り返し再計算(updateRender)されるため、それによりパフォーマンスが悪くなることがあります

    プロダクトのパフォーマンスを改善するためにVue.jsの関数型コンポーネントやpropsに関する施策を行った話 - SMARTCAMP Engineer Blog
  • 在宅勤務中の開発チームの様子を紹介するよ! - SMARTCAMP Engineer Blog

    こんにちは、BOXIL開発チームの徳田です。 ついに(?)緊急事態宣言が発令され、社会全体がバタバタしていますが皆さん元気にやっていますでしょうか。 スマートキャンプでは3月2日から新型コロナウイルスの感染防止対策として在宅勤務が行えるようになり、現在では原則出社禁止となっています。 これまでほとんどの業務時間を対面で過ごしていましたが、全員が在宅で仕事をするようになったので、今回はその様子をお伝えしようと思います! これまでの開発体制 BOXIL開発チームの様子 基地Zoom部屋 ペアプロ・モブプロ 週次振り返り (Retrospective) 週次成果発表 (Sprint Review) テキストコミュニケーション Biscuet開発チームの様子 サブZoom部屋 週次振り返り (Retrospective) おまけ: 全社的な動き これまでの開発体制 スマートキャンプは開発チームが2

    在宅勤務中の開発チームの様子を紹介するよ! - SMARTCAMP Engineer Blog
  • Vueユーザーが感じたSvelteのおもしろい機能を紹介する - SMARTCAMP Engineer Blog

    スマートキャンプでエンジニアをしている瀧川です! 2月に育休を取得し、3月に復帰したと思ったらコロナでリモートワーク、そしてチーム異動となかなか落ち着かない今日このごろ。 みなさんいかがお過ごしでしょうか? 今回家にいる時間が多くなり、せっかくだから新しいことしたいよなーということで、以前から気になっていた Svelteを触ることにしました! Svelteの紹介記事では、「Vue.jsと構文が似ているため習熟が簡単」「Vue.jsの50倍早い」みたいなところにフォーカスされることが多いかなと思いますが、記事ではSvelteのTutorialをやるなかで、フレームワーク(ライブラリ)の機能として普段Vue.jsを利用している私がおもしろいなーと思ったものをご紹介したいと思います。 Svelteとは 基文法 特徴的な機能 propsやclassの省略記法 Await Block React

    Vueユーザーが感じたSvelteのおもしろい機能を紹介する - SMARTCAMP Engineer Blog
  • LighthouseをFirebase Functionsから毎日叩いて本番環境のパフォーマンスを計測してみた - SMARTCAMP Engineer Blog

    スマートキャンプの笹原です。 みなさんはWebサイトの、特にフロントのパフォーマンス改善を日頃から行っていますか? 常に意識しているという方もいれば、気が向いたときにたまに見てみるなんてこともあるんじゃないかと思います。 今回はそんなパフォーマンスに常に意識を配れるように、毎日Lighthouseを叩いてみたのでその構成を紹介したいと思います。 Lighthouseとは 要件 処理の流れと制約 実際の構成 1. 定期的にCloud Tasksに各ページごとのTaskをEnqueueする TaskをEnqueueされるCloud Tasksのキュー作成 TaskをEnqueueするFunctionの作成 2. 各ページにLighthouseを実行しBiqQueryに結果を格納する 終わりに Lighthouseとは まずはLighthouseについて簡単な説明です。 Lighthouseとは

    LighthouseをFirebase Functionsから毎日叩いて本番環境のパフォーマンスを計測してみた - SMARTCAMP Engineer Blog
  • 開発チームを異動してわかった4つのこと - SMARTCAMP Engineer Blog

    スマートキャンプ、エンジニアの井上です。 弊社で挑戦の意味も込めて、BOXIL開発チームからBiscuet開発チームへの異動をしました。 今回はチーム異動で気づいたことをお伝えしていこうと思います。 1. スクラムによるチームへの引き継ぎコストの削減 2. 新しいチームへの不安 3.気持ちの切り替え 4. チーム異動のメリット メンバーが異動をできるという事例ができる 新しい技術に触れることでできることが増える 新しいビジネスに関わることでドメイン知識が増える 前のチームのノウハウを新チームへ共有できる まとめ 1. スクラムによるチームへの引き継ぎコストの削減 チームを移動するということで、自分がいなくても対応可能な状態にするために、引き継ぎのためのドキュメントを書いたり作業手順などを残すなどが必要かと思います。 弊社の場合は、スクラムを導入していた効果で属人性の高い作業などが少なく、誰

    開発チームを異動してわかった4つのこと - SMARTCAMP Engineer Blog
  • 育休を“取らない側“のチームメンバーが、エンジニアリーダーの不在によって成長した話 - SMARTCAMP Engineer Blog

    お子さんのご誕生、おめでとう! スマートキャンプのプロダクトマネージャーの郷田です。 近頃、育休を取得されたエンジニアの方の記事をよく見かけるようになりました。 そんななか、弊社スマートキャンプでも直近でエンジニア育休を取得する機会があったのですが、 記事では逆の視点、つまり残されたメンバーの視点から、「育休エンジニアリーダーが不在となった開発チームに、どのような変化があったのか?」をお届けします! 開発体制 スクラムでのプロダクト開発 チームの編成 エンジニアリーダーの業務 育休に入るまで 不在時の問題と対策案の共有 実際にエンジニアリーダー不在となって 困ったこと 困ることで起きたポジティブな変化 思ったより、困らなかったこと 育休期間を終えて 一人ひとりの感想 育休をとったエンジニアリーダーからのコメント まとめ その他 開発体制 はじめに、我々のチームではどのような体制で開発

    育休を“取らない側“のチームメンバーが、エンジニアリーダーの不在によって成長した話 - SMARTCAMP Engineer Blog
  • 体験入社の参加者に実際どうだったかインタビューしてみました - SMARTCAMP Engineer Blog

    スマートキャンプでエンジニアリングマネージャーをしている米元です。 突然ですが、みなさんは転職活動をする際にどのようにして企業を選びますか? 企業のビジョン/ミッション・技術力・社員の人柄、などなど見るべきポイントはたくさんあると思います。 ただ数回の面接だけでは当にその企業が自分にマッチしているのか分からない事もあるのではないでしょうか。 企業側も一緒に働くまでは候補者の方が自社で活躍できるのか、候補者と自分たちの期待値が合っているのかが分からないといった場合があると思います。 そこでスマートキャンプでは選考が進んだ候補者の方に対して、会や体験入社などの面接以外の方法でお互いのマッチ度を測る取り組みを行っています。 今回はそれらの取り組みの中でも「体験入社」に最近参加された方にインタビューを行い、客観的な観点での感想を記事にしてみようと思います! 参考 身近なUXデザイン? 会社1日

    体験入社の参加者に実際どうだったかインタビューしてみました - SMARTCAMP Engineer Blog
  • Kubernetesを1年間運用してわかった3つのこと - SMARTCAMP Engineer Blog

    スマートキャンプ、エンジニアの入山です。 弊社で技術的挑戦の意味も込めて始めたKubernetes(k8s)も、小規模ながら運用を開始して1年以上が経ちました! 現在では、k8sでのインフラを採用したプロダクトが無事に番リリースを迎え、ユーザーが番稼働を行うまでになっており、躓きながらも少しずつ運用知見が溜まってきています。 今回は、k8sを実際に運用してわかった3つの知見を紹介したいと思います! PodのNode配置が偏る 解決策 ローリングアップデート時にダウンタイムが発生する 解決策 Pod削除時にコンテナによってプロセスが終了するタイミングが異なる 解決策 最後に PodのNode配置が偏る k8sではPodを新規作成する場合に、kube-schedulerが各ノードのリソース使用状況等から判断した最適なNodeへスケジューリング(配置)を行います。 しかし、このスケジューリン

    Kubernetesを1年間運用してわかった3つのこと - SMARTCAMP Engineer Blog
  • 和田卓人(t_wada)さんによる『TDDワークショップ』をマネーフォワードと共同で開催しました! - SMARTCAMP Engineer Blog

    スマートキャンプで Biscuet を作っているエンジニアの中川です。 記事は2月5日に弊社で開催したTDDワークショップについて紹介します! TDD: テスト駆動開発のこと。テスト駆動開発とは、テストファーストとして初めにテストコードを書き、その後テストをパスするコードを実装し、さらにその後コードをリファクタリングして良くする、というサイクルを回していく開発手法のこと。 今回のワークショップはマネーフォワードと共同開催し、合計20名のエンジニアが参加しました! また、講師としてテスト駆動開発の第一人者である和田卓人(@t_wada)さんにお越しいただきました。 日はスマートキャンプ株式会社様および株式会社マネーフォワード様にお招きいただき、1日コースのTDDワークショップを開催させていただきました。午後の演習とコードレビューでは鋭い質問がたくさん飛び出し、議論が盛り上がりました。ご参

    和田卓人(t_wada)さんによる『TDDワークショップ』をマネーフォワードと共同で開催しました! - SMARTCAMP Engineer Blog
  • BOXIL開発チームの「今」と「これから」 - SMARTCAMP Engineer Blog

    こんにちは、 BOXIL の開発をしている徳田(@haze_it_ac)です。 今日はBOXILの開発チーム、特にエンジニアが今どういうことを考えてどんな開発をしているのか、そしてこれからどうなっていこうとしているか をご紹介します。 スマートキャンプという名前を聞いたことがある人、興味がある人に読んでもらえると嬉しいです。 合わせて読みたい BOXIL開発チームの今 開発体制 開発プロセス・スタイル 今の課題 やりたいことに対してのリソース不足 技術負債 BOXIL開発チームのこれから 採用 改善活動: 技術 改善活動(プロセス おわりに: 宣伝 BOXIL開発チームでお待ちしています エンジニアイベントやっています 合わせて読みたい tech.smartcamp.co.jp 昨年末までの「BOXIL開発チームのこれまで」を、現Product Managerの笹原が書いているので一緒に読

    BOXIL開発チームの「今」と「これから」 - SMARTCAMP Engineer Blog
  • Advent Calendarに参加したベンチャー企業が、実際のところどうだったか振り返ってみる - SMARTCAMP Engineer Blog

    明けましておめでとうございます。 スマートキャンプの笹原です。 2020年になったのにまだ引きずってんのかよって思われるかもですが、今回は2019年のアドベントカレンダーに参加してみてわかったことを振り返っていきたいと思います!!! なぜAdvent Calendarに参加したか 参加のための事前準備 実際の参加状況 数字で振り返るAdvent Calendar ページビュー はてブ Google Discoverからの流入 Google検索からの流入 Qiita内でのメトリクス 心で振り返るAdvent Calendar アンケート 最後に なぜAdvent Calendarに参加したか 結論から言うと、『Advent Calendarに参加してみたかった』が理由になります。 先日公開した記事にもある通り、このエンジニアブログを始めてから1年が経ちます。 実は、そのエンジニアブログを始め

    Advent Calendarに参加したベンチャー企業が、実際のところどうだったか振り返ってみる - SMARTCAMP Engineer Blog
  • エンジニアブログを開設して1年でなにが起きたかすべてオープンにする - SMARTCAMP Engineer Blog

    スマートキャンプエンジニアの瀧川です。 記事はスマートキャンプ Advent Calendar 2019 - Qiitaの25日目の記事です。 このスマートキャンプ エンジニアブログを開設して今日でちょうど1年が経ちました 🎉 1年前のクリスマスに私がオーナーとしてはじめたことですが、長続きしないんじゃないか...採用につながるなんてあるんだろうか...そんな不安を抱きながらのスタートでした。 それが結果として1年間毎週記事公開、Techブログスコアランキング4位*1、イベント登壇オファー*2などなど大きな成果を得ることができました。 10人そこそこのメンバーで、これだけの成果を挙げられたはとても貴重な体験で、様々な知見も得られたので、節目となる記事で出せるものは全て出していこうと思います! なぜエンジニアブログをはじめたか 採用のためのブランディング エンジニア組織や個人の成長 自

    エンジニアブログを開設して1年でなにが起きたかすべてオープンにする - SMARTCAMP Engineer Blog
  • クリスマスイブなのでSonicPiを使って3時間でジングルベル(曲)作ってみた - SMARTCAMP Engineer Blog

    こんにちは。スマートキャンプの郷田です。 記事はスマートキャンプ Advent Calendar 2019 - Qiitaの24日目の記事です。 私は普段から趣味で楽器演奏や曲作りをしているので、前から少し気になってたSoundPiを使ったサウンドプログラミングで簡単なループ音源を作ってみようと思います! SonicPiとは? 作成したものはこちら 曲 コード SonicPiを使ってみた感想 最後に SonicPiとは? コードベースで音楽制作のできる無料ツールです。 sonic-pi.net WindowsmacOS、Raspberry Piで実行することができます。 利用時の画面はこちら 作成したものはこちら 今回は3時間でできるところまでを目指して作成してみました。 最初の1時間でチュートリアル、ヘルプを読み、残りの2時間でコーディングをしました。 チュートリアルはダウンロードし

    クリスマスイブなのでSonicPiを使って3時間でジングルベル(曲)作ってみた - SMARTCAMP Engineer Blog