サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Google I/O
note.shiftinc.jp
はじめにこんにちは、SHIFTのITソリューション部に所属しているHoribeです。 突然ですが、みなさんはWindowsのパッケージ管理ツールと聞いて何を思い浮かべるでしょうか? macOSであればHomebrew、Linux系であればaptやyumなどが有名で、OSとセットのようなイメージで使われている方が多いかと思います。一方で、Windowsのパッケージ管理システムは知らないという人も多いかもしれません。 実はWindowsにもWindows Package Manager、通称Wingetというパッケージ管理ツールが存在します。本記事ではこのWingetについて、ツールが開発された背景や基本的な使い方、使用するメリットについて解説しようと思います。 WingetとはWinget(正式名称: Windows Package Manager)は、Microsoftによって開発されたW
はじめに皆さん、こんにちは 最近ピタパンづくりにハマっているのですが、いっこうにピタパンのピタ部分が開かず、家人に「それはナンでは?」と言われているSHIFT EVOLVEの森川です。 先日開催したテストとAIのイベントが好評だったのでレポートさせていただきます。 生成AIはどうテストを変えるのか (AI Test Lab vol.1) - connpassイベントのきっかけGitHub copilotを筆頭にソフトウェア開発でも、日常的に利用される生成AIのサービス。一方でテストや品質保証についてはどうでしょうか? さまざまなトライアルや事例がでてきているものの、まだまだプラクティスとして確立されるには少し遠い感じがしています。SHIFT EVOLVEとして、このテーマを深く広く考えたい、できれば現場目線で様々な立場の人と、公の場でディスカッションしたい、と思い企画しました。 記念すべき
はじめにこんにちは。 株式会社SHIFT ITソリューション部アプリケーションサービスグループの尾﨑です。SHIFTでマイグレーション関係のお仕事をしております。 今回、以下のような事件があり、この記事を書いてみました。 ご興味のある方が、最後まで読んで頂けると嬉しいです。 ことの発端Broadcom社が2023年末にVMware社を買収しましたが、大きな影響が各方面に出ています。 特に、2024年2月12日(米国時間)に発表した 永久ライセンス廃止と、仮想化ソフトウエア「VMware vSphere Hypervisor(以降VMware ESXi)」の無償版廃止が大きいです。 参考:VMware by Broadcom : 製品ラインアップとライセンスモデルを大幅に簡素化 今後、VMware社の製品やサービスが、従来同様に提供され続けるか不透明ですので、仮想化ソフトウェアであるVMWa
はじめにこんにちは、SHIFT「ワスレナイ」ブログ編集部です。 自社SaaS管理ツール「ワスレナイ」について情報発信しながら、 SaaSにまつわるお役立ち情報をお届けしています。 **→無料のSaaS・IT資産管理ツール「ワスレナイ」の資料ダウンロードはこちら ** 最近、SaaSというワードを様々なビジネスシーンで当たり前のように耳にするようになってきました。SaaSとは Software as a Service の頭文字からなり、ソフトウェアをクラウド上で提供するサービスです。 従来のソフトウェアのようにコンピュータにインストールをする必要がなく、インターネットを通じてアクセスし必要な機能を利用することができます。 「手軽にサービスを利用できることから、社内でSaaSの導入が広がり その結果、アカウント管理に困っている。」 そんなお悩みはございませんか? 今回はSHIFTが提供してい
はじめに皆さん、こんにちは。SHIFT サービス改革部の森川です。 3月から開発チームのマネージメントポジションとなりました。 テスト管理ツールの"CAT"や、テスト設計を支援するツール"TD(TEST DESIGNER)"などの社内外問わず広範にご利用いただいているツールの開発部署で日々マネージメントに奔走しております。 管理職といえば、チームの皆さんが頑張った成果を数字にまとめて、上層部に素早く伝えるのが、一つの重要な責務ですよね。 報告は可視化と透明化が肝心、ということでBIツールを導入してみました。 やったこと以下の3つの情報を、1つのBIツールに一元的にまとめてダッシュボードを作って可視化しました。 売上・商談情報のBI化 製品利用状況のBI化 エンジニア生産力のBI化 まだ道半ばのものもありますが、形にはなってきているので、言語化&公開してみることにします。 こういうのは完成を
こんにちは。SHIFTで教育部門の責任者をしています、佐相 真也(さそう しんや)と申します。 今回はSHIFTの入社試験「CAT検定」を、受講される方の目線で解説します。 これからCAT検定を受講される方は、必見です!! 1.優秀な人材を発掘するSHIFTの「CAT検定」の秘密まず、CAT検定とはどんな試験なんだろう? というところからお話しします。 CAT検定は、SHIFTが独自開発したテストエンジニアの「素養」を評価するための検定試験で、採用基準の一つとして使っている試験です。 既にかなりの人数が受験していて、2022年4月現在、7万人以上が受講しています。 このCAT検定の面白いところは、IT未経験の方でも「テストエンジニアの素養」があれば合格できる試験となっている点です。 通常の入社試験は、知識・スキル・経験が問えるような問題になっていると思いますが、なんとCAT検定は知識・スキ
はじめにこんにちは。株式会社SHIFT DAAEの栗山です。今日は血も凍るような怖い話をしたいと思います。 Lambda関数は誤った使い方をすると、無限に動きます。 そのLambda関数がS3にオブジェクトを作成でもしようものなら、あっという間に何百万、何千万という膨大な数のオブジェクトがS3に作成されます。そして、それらのサービスに紐づけられたログ監視サービス(CloudWatchやCloudTrailなど)がその分のログを記録します。 そして、その分の費用が請求されるのです・・・。 概要本稿では「Lambda関数を無限に動かしてしまう」という失敗例をテーマに、その失敗の根本的な原因や対策について私見をまとめました。 「身近なところでLambda関数が無限に動く事故が発生した」「自分がやらかしてしまった」といった方の参考になれば幸いです。 Lambda関数を使う前に意識するべきことLam
はじめにこんにちは。 株式会社SHIFTのブラッドフォード です。 ついに Storybook の v7.0 が正式リリースされましたね! 早速利用していますが、設定や記法がシンプルになり使いやすくなりました。 Storybook といえば、コンポーネント管理を目的としたライブラリですが、最近はテストもこなせるようになりました。 公式では「インタラクションテスト」という名前で紹介されています。 今回はこの「インタラクションテスト」を使ったフロントエンドのテストを紹介します。 うまく活用できれば、単体テストや結合テストは「インタラクションテスト」に集約できるかもしれません。 執筆者プロフィール:ブラッドフォード 株式会社SHIFT DAAE部所属のフロントエンドエンジニアです。 最近は keyball を使って仕事しています。 おさらい|フロントエンドのテストまずはフロントエンドのテストにつ
はじめにこんにちは。SHIFT DAAE(ダーエ)開発グループ所属のNogamiです。 皆さんは、負荷テストを行う際に、普段どんなツールを使われていますか? 今回は、システム開発に欠かせない「負荷テスト」に使用する、6つの負荷テストツール(サービス)について解説させていただきます! 6つの負荷テストツール(サービス)1.「JMeter」「JMeter」は負荷テストツールを検討する際に、必ずといっていいほど名前が挙がるオープンソースのテストツールです。 ローカル環境にインストールすることができ、テストシナリオの作成やテスト実行を行うことができます。 引用:Apache JMeter テストシナリオは、コーディング不要で、GUI上で作成することができます。 「JMeter」は20年以上に渡り利用されているツールであり、数多くのプラグインや関連サービスが存在します。 多数のプラグインで機能を拡張
はじめにSHIFTからシステム・アイに出向中の斎藤です。少し前にECSでECRからdocker pullをしようとした際にエラーが出てかなり解決に時間がかかってしまいましたので、その時の状況と解決方法を共有します。 エラー内容ECSでECRからdocker pullをしようとすると、以下のようなエラー文が出ました。 ResourceInitializationError: unable to pull secrets or registry auth: execution resource retrieval failed: unable to retrieve ecr registry auth: service call has been retried 3 time(s): RequestError: send request failed caused by: Post https
こんにちは。株式会社SHIFT DAAE部の栗山です。 今日はAWS Cognitoを「裏側」の認証・認可サーバーとして使用するためのAPIを紹介します。 CognitoにはHosted UIというログイン画面が組み込まれており、これを使用すると認証処理を実装したり、そのための画面を作成する必要はありません。パスコード認証画面も、SNS認証画面もすべてCognitoが用意してくれます。 しかしながら、このHosted UIはデザインの自由度が低く、とくに一般顧客向けのシステムでは利用するのはなかなか難しいと思います。そこで今回はHosted UIを使用せず、Cognitoに対してAPIサーバからアクセスするようにして、Cognitoの各種認証機能を使用するためのAPIを紹介したいと思います。 ※タイトルの「裏側」というのは、ユーザーが直接Cognitoにアクセスする構成ではなく、Cogni
はじめにこんにちは。SHIFT DAAE 開発グループ所属のsakuraiです。 NestJSとReactを利用した開発を行う中、 おなじTypeScriptで書いているのであれば、共通化したモジュールを利用したい。 フロントエンドとバックエンド単位ではなく機能単位でPRを作成したい。 という思いがあふれてきたので、npm workspaceを利用してモノレポ化しました。その際に実施したことを今後の為にまとめておこうと思います。 モノレポ化の手段についてまずは、モノレポ化の手段を検討しました。 Turborepo(https://turbo.build/)といったツールの利用 NestJSのMonorepo mode(https://docs.nestjs.com/cli/monorepo) といった方法もありますが、 npm v7以降から利用できるnpm workspaceを選びました。
はじめにSHIFTの三谷です。 11月から、新しいお客様先に入って仕事をしています。新しい環境にはワクワクしますが、お客様からの信頼を築き上げるまでが大変ですよね。私も「よーし、信頼されるようにコツコツ頑張っていくぞ」なんて考えていたんです。 しかし、そんな私にとって衝撃の出来事が起きました。 入って2日目にして、もうお客様から信頼を得てしまったのです。 (自分で言うのもなんですが、いったん語らせてください!笑) 一体何があったのか。 今回は、短期間でお客様の信頼を得るまでの一部始終を記事にしました。 私はIT業界でアジャイルに特化した部署に在籍していますが、今回の記事は、業界や職種に関係なく活かせる内容となっています。 ぜひ色々な方に読んでいただけたら嬉しいです。 参画前日|めちゃくちゃ踏み込む今回のお客様先には、私とSさん(私と同じくSHIFT在籍)がアサインされることになっていた。こ
はじめにSHIFT DAAE の shinagawa です。表題の通りNode.jsで作成したコンテナのイメージサイズの軽量化に挑戦しました。 背景近年の多様化・高速化するビジネスに対応するITシステムの構築を実現する「クラウドネイティブ」の構成要素の一つとして 「コンテナ」という仮想化技術が存在し、当部門でも活用を進めております。 このコンテナイメージを作成するにはアプリケーションコードやライブラリ・モジュールなどの依存物、ランタイム等を1つのイメージとして組み立てて作成しますが、 この構成要素が増えるとイメージサイズが肥大化し保管時のストレージのコストの増加やイメージの転送、環境への展開に時間がかかることになります。 従ってイメージのサイズを削減することは、これらの点を改善することにつながります。 ここではネット上で紹介されている、あらゆる打ち手を組み合わせてコンテナイメージの軽量化に
こんにちは、自動化アーキテクトの森川です。 アドベントカレンダーと言えばブログ、ブログといえばアウトプット、日ごろのアウトプットといえば日記かWIKIですよね。 ということで本日は去年の9月頃に技術検証をスタートして仮運用~公開まで1年ほどかけて育てた社内WIKIに関するお話をさせていただきます。 WIKI導入のきっかけ会社の成長に合わせて組織がスケールしています。 技術部門だけでも3年で4倍、500~600名の組織になり、技術ナレッジや人とスキルの情報共有が追いつかないという課題が発生しています。 もちろんこれらについてはスキルマップの整備や、情報可視化が正式な施策として進められています。一方でエンジニア・コミュニティな目線では、ナレッジを気軽にアウトプットして共有する草野球的な場所がほしいなぁ、と思いました。 『そうだ、エンジニア向けの社内WIKIだ!』 と思い、社内をかけまわって承諾
はじめにこんにちは、SHIFT の開発部門に所属しているmurasawaです。今期より中途で入社し、バックエンド関連の開発を担当しています。 現在、研修でデータベースやRestAPIについて基本的な事から学んでいます。 学んだことをアウトプットし理解を深めていくとともに技術の共有として役に立てば幸いです。 今回は私自身興味もあり、触ってみたいと思っていたこと、また業務で必要とされていたvue.js、vuetifyでのフロントエンド開発の際に困ったv-modelとv-on,v-bindについてまとめてみました。 今回の説明で出てくるプログラムはVue CLIの<template>, <script>内に書くことを想定しています。 v-modelについてv-modelは双方向のデータバインディングを行います。 例えば名前を入力する欄をv-modelで作りました。 <template> <div
はじめにこんにちは、DevOpsエンジニアのユです。 普段はWindowsOSを使用していますが、開発は殆どLinuxベースなので、Windows PowerShellは初心者です。 案件より、環境のVDI(Windowsサーバーのバーチャル作業インターフェース)から他のWindowsにアクセスしてPowerShellを操作し、スクリプトを実行したいということで、WinRMの操作を勉強しました。 今回はPowerShellでWindowsから遠隔で他のWindowsのを操作するイロハを紹介したいと思います。 WinRMとは?WinRMはWindows PowerShellを遠隔から操作する機能です。 他のWindowsコンピュータのPowerShellコマンドラインを呼び出してコマンドの実行やプログラムの起動などを行うことができます。 詳細はMicrosoftのドキュメントを参照してくださ
はじめにこんにちは、SHIFTの開発部門に所属している Katayama です。 GitHub Actions の CICD で、AWS 環境に Deploy する際に最も簡単なのは AWS のクレデンシャルを GitHub Actions のSecretに登録して、パイプライン(yaml)でそれを利用する事だと思う。 具体的には以下のような感じ。 - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v1 with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} aws-region: ap-northeast-
はじめにこんにちは、SHIFT の開発部門に所属しているKatayamaです。今期から転属になり、開発を担当していくことになりました。 現在、基本的な事から学ぶ研修中です。開発部門では新しく学ぶことがたくさんあり、それらを自身の振り返りアウトプットとして発信していけたらと思います。記事が溜まったら、noteのマガジンにもまとめる予定です。 今回はExpressのエラーハンドリングの実装方法について、その実装方法のオプションについてと、middlewareを使った実装方法について理解したので、それについてまとめておこうと思います。 Expressとはhttps://expressjs.com/ ExpressのデフォルトエラーハンドリングExpressにはデフォルトのエラーハンドリングが実装されており、以下のようなコードを書くとちゃんと500エラーが返ってくる。 const express
はじめにこんにちは、自動化アーキテクトの森川です。 本日はCircleCIのパイプラインに関するTipsです。 やりたいことCircleCIのクラウド環境でE2Eテストをまわすとき、VMからテスト対象へのアクセスが必要となります。 開発環境にIPアドレス制限がかかっていることは「あるある」です。 IPホワイトリストのオプション契約をしていれば万事解決ですが、POCフェイズではそのようなリッチな環境は望めません。 CircleCIで開示されているIPアドレスリストを使うのはセキュリティ的に難しい場合もあるでしょう。 IP アドレスの範囲 - CircleCI Note: Jobs can use any of the address ranges above. また、このアドレス リストは、本機能を有効化しているすべての CircleCI ユーザーと共有されることに注意してください。 そこで
はじめにこんにちは、SHIFT の開発部門に所属しているKatayamaです。 開発をしていく中に静的解析・構文チェックが常に走る状態になっておらず、開発後に一気に静的解析・構文チェックを実行すると、中々悲惨な事になってしまいます・・・。というわけで今回は JavaScript の開発をする上では必須とも言える静的解析・構文チェックツールである ESLint・prettier の設定を 1 からやってみたので、それについて書いていこうと思います。 合わせて、ESLint・prettier の設定に合わせた VS Code の設定も行ってみたので、それについても書いています。 ※なお、今回 ESLint の設定を行うプロジェクトは、Node.js で ES Modules を利用して実装しているものにります。Node.js で ES Modules を利用するための設定についてはNode.j
はじめにSHIFT DAAE部 shinagawa です。 最近、JSのランタイムである「Bun」が話題になっているのを目にしました。 ちょっと調べてみると、スピードやパフォーマンスについて注目されているようでしたが、 特に気になった点は、実装にZigという言語が利用されていることでした。 ※ Zigについて Zigは、アンドリュー・ケリーによって設計された命令型の汎用の静的型付けのコンパイル型システムプログラミング言語である。 この言語は「堅牢性、最適性及び保守性」向けに設計されており、コンパイル時のジェネリクス、リフレクション、クロスコンパイル及び手動メモリ管理をサポートしている。 Zig (プログラミング言語) - Wikipedia他の言語と比べて情報量がそれほど多くは無かったのですが、実行バイナリを小さくできる点と、 ビルドの標準のオプションでWasmが吐ける点が素晴らしいと思っ
はじめにこんにちは!Unit~E2Eのテスト自動化を生業にしている、いしいと申します。 ユニットテストに限らず、何かを始めようと思ったとき、人は様々な壁に直面しますよね。知識・経験の問題、コストの問題(金銭、時間)、メンタルの問題(納得感、不安感)、それらが複合的に結びつく社内政治的な問題などなど・・・。そして、それらの壁を乗り越えて第一歩を踏み出すことには大変な困難を伴います。 この記事では、ユニットテストを書いていくのにあたって、どのような壁・問題があるのかを確認し、それに対してどのようにアプローチをすれば乗り越えられるのかを考えていこうと思います。 ユニットテストの壁とその乗り越え方メンタルの問題根本的にモチベーションが上がらない それはユニットテストのメリットや魅力に理解、納得がいっていないからです。人間、無駄なことをやりたいとはなかなか思えません。仮に、無駄と思いながらやったとし
はじめにはじめまして!SHIFT DAAE(ダーエ) 開発グループ所属の武藤です。 早速ですが、supabaseご存知でしょうか?最近試しに使ってみたところ、バックエンドに欲しい機能が簡単に作成できるサービスだったので、Webアプリケーションの開発デモを交えてご紹介します。 なお、当記事は2022/6/28時点の情報をもとにしています。 supabaseについてサービス概要subabaseは、認証やデータべースといったバックエンドに必要な機能を提供している、いわゆるBaaSの1つです。 BaaSの他サービスとしてはGoogleのFirebaseが有名ですが、supabaseはそのFirebaseに取って替わるサービスであると謡っています。まだPublic Beta版(企業以外のほとんどのユースケースに耐えうる)ではありますが、大きな注目を集めているオープンソースの1つです。 機能supab
こんにちは。インフラエンジニアの北野です。 kustomizeを使用する機会がありましたので、そこで得た知見を紹介したいと思います。 kustomizeについて知りたいかたの一助になれば幸いです。 kustomizeとはKustomizeは、複数のKubernetesクラスターを管理する状況において、リソースの構成や設定などをYAML形式で記述したマニフェストファイルをシンプルに管理できる便利なツールです。 Kubernetesではリソースの構成や設定などをYAML形式で記述したマニフェストで管理を行います。 マニフェストに定義した構成や設定を、マスターノードに登録することで、「Infrastructure as Code」を実現しています。 インフラの設計や設定がCode化されていると、構築が大変捗りますよね。 しかし、実務において、使用するクラスターは一つだけではなく、開発環境、本番環
はじめにこんにちは、SHIFT の開発部門に所属している Katayama です。 バックエンドでは配置する資材のサイズについて気にする事はないが、フロントエンドの場合は違う。 ブラウザの読み込み速度は利用者の快適さに直結するので、できるだけフロントエンドの資材のネットワーク転送量は少ない方がいい。 そこで今回は、以下に挙げた 3 つの方法を使って、できるだけネットワーク転送量が少なくなるようにし読み込み速度を向上させるという事をやってみた。 ①webpack-bundle-analyzerを用いて webpack で build する際に bundle サイズを小さくする ②HTML/CSS/JavaScript を縮小する(minify) ③gzip による圧縮する 以下でそれぞれの方法についてみていく(①・② については、実際にその方法を試すのは純粋な webpack ではなく、Vu
はじめにこんにちは。SHIFTのインフラ・アーキテクトの岡田です。 テストツールのLocustを使用してAPIの性能テストを行う機会がありました。そこで得た知見を、よく使用する機能に絞って紹介したいと思います。「Locustを使ってすぐに性能テストを始めたい!」という方の一助になれば幸いです。 Locustって何?Locust( https://locust.io/ )はWebアプリケーションやAPIの性能テストを行うための、オープンソースの負荷テストツールです。同様のものとしてはJMeterやk6などが有名ですが、Locustの特徴は何といってもPythonでテストスクリプトを書けることです。 テストスクリプトは普通のPythonプログラムなので、使い慣れたIDEはそのまま使用できます。また、Pythonの豊富なパッケージを使ってテスト結果を処理したり、CI/CDに性能テストを組み込むこ
スクラムマスター目指して日々勉強中!SHIFTの三谷です。 先日、スクラムマスターの資格「PSM I」を無事取得しました!! やったー!! そこで、実際に取得した私の経験に基づいて、 PSM Iを取得することに、メリットはあるか? PSM Iの取得は、どんな人におすすめか? について、私の考えを述べたいと思います。 そもそもPSM Iって何?PSM(Professional Scrum Master)は、Scrum org.が認定しているスクラムマスターの資格です。 レベルはI~Ⅲまであります。PSM Iが最も易しく、スクラムガイドの記載内容と、その応用が問われます。 スクラムマスターの資格といえば、CSM(Certified Scrum Master)、LSM(Licensed Scrum Master)を想像する方も多いでしょう。その2つの資格との大きな違いは、以下の3つです。 研修の
RGAでインフラエンジニアをしている川合です。 以前SHIFT EVOLVEでOpenAPIについて発表したのですが、この時はライトニングトークだったということで持ち時間も少なく、あまり詳しくは話すことができなかったので、以下の2点についてここで少し詳しく書いておこうと思います。 OpenAPIというものはなにかの概要解説 OpenAPIを用いた開発手法について簡単な説明 ※元のスライドはこちらをご参照ください。 https://speakerdeck.com/shift_evolve/apihuasutofalsekai-fa ※コードはこちらにありますので合わせご参照ください。 https://github.com/kwryoh/oapi-sample OpenAPI とはOpenAPIはRESTful API記述方法のひとつです。 APIの各パスやリクエスト・レスポンスの形式の仕様を
次のページ
このページを最初にブックマークしてみませんか?
『SHIFT Group 技術ブログ』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く