並び順

ブックマーク数

期間指定

  • から
  • まで

321 - 360 件 / 12746件

新着順 人気順

CIの検索結果321 - 360 件 / 12746件

  • コンテナ・セキュリティ入門 脆弱性 - Qiita

    コンテナイメージのレジストリでは、脆弱性検査の実装が当たり前になっている。企業でKubernetesなどコンテナを使用するにあたって脆弱性対策がどれほど重要なものか理解するために、脆弱性検査や、関連する国際的な標準について整理した。 脆弱性(ぜいじゃくせい)とは 脆弱性とは、プログラムの動作の不備を悪用される情報セキュリティ上の弱点である。つまり、ソフトウェア上の問題が原因となって生じた欠陥であり、セキュリティホールとも呼ばれる。当然、ソフトウェア開発者は、脆弱性を産まないように細心の注意を払ってコード開発を進めるが、開発者が利用するオペレーティングシステムのライブラリやパッケージに含まれることもある。そのような事情から、開発者の責任範囲外に原因がある場合も多くある。 潜在的な脆弱性を突いた新たなクラッキングの手口が、時間の経過ともに発見される。そのことから、開発当初はコードに脆弱性は無い

      コンテナ・セキュリティ入門 脆弱性 - Qiita
    • メールの受信トレイを空にするInbox Zeroを始めた

      Gmailをメーラーとして使ってますが、メールを開くのがいまだに苦手です。 これをどうにかしようと、メールをもっと気軽に消せる方法はないかなーと思ってInbox Zeroを思い出したのでやり始めました。 次の記事や動画を参考にしています。 Inbox Zero and the Inbox Zero Method — everything you need to know 【15分で完了】1度設定したら戻れない、受信トレイ0生活 | おかんの給湯室 My Complete Inbox Zero Workflow (in 2022)! - YouTube 基本的には、この動画を参考にして設定しました。 Inbox Zeroの設定方法 細かい設定は参考にした動画や記事の方に任せます。 Gmailの”設定”でやること 詳細タブ [ ] 自動表示 を有効化(アーカイブしたときに次のメールを自動で開く

        メールの受信トレイを空にするInbox Zeroを始めた
      • Webサービスを作るときのテンプレートを作った - hiroppy's site

        週末に自分がよく使っている技術をまとめたら反応が良かったので、テンプレートを作りました。 なにかWebサービスを作るときに、自分はこれらのライブラリを基本的には入れます。 ベースはcreate-next-appとなりますが、そこで生成された状態だと認証もDBも何もありません。 しかし、サービスを作るにあたって必要なケースがほとんどです。 このテンプレートには特定のライブラリを入れると毎回書かないといけない項目等を事前に作っておき、 開発に集中できる仕組みを作るのがゴールとなります。また、例を示しつつ削除するコード量を最小限に抑えます。 主にNext.js固有のハマるポイントや環境構築などめんどくさいけど毎回書いている点をカバーします。 linterと関連があるVSCode, pre-commit等の設定NextAuthに指定されたDB Schemaの作成やAPI routeの設置開発、テス

          Webサービスを作るときのテンプレートを作った - hiroppy's site
        • 最近 Fitbit つけて散歩してるので CircleCI + Pixela で見えるようにしてみた - Mitsuyuki.Shiiba

          歩数で草を生やしてみたのだー。これで散歩の楽しみが増えたなー やってること やってることはシンプルで、こう↓ Fitbit の API で歩数を取得 Pixela に記録 というスクリプトをつくって CircleCI で定期的に実行 Fitbit? 最近 Fitbit Sense というスマートウォッチをつけて散歩してる www.fitbit.com 会社の福利厚生で健康のための補助があるので、それを利用して手に入れたのだ。散歩やジョギングをしたら勝手に記録されてるので便利。睡眠のログも取られてるので面白い Pixela? Pixela は日々の活動を記録して見えるようにしてくれる API サービス。いちばん最初に貼った画像みたいに GitHub の草を生やすやつみたいにしてくれる。操作が全部 API 経由なのも楽しい pixe.la せっかく散歩してるから せっかく散歩してるから Fit

          • テストコードの改革を進めている話 | メルカリエンジニアリング

            はじめに この記事は、Merpay Tech Openness Month 2023 15日目の記事です。 こんにちは。メルペイ加盟店精算チームのバックエンドエンジニア@r_yamaokaです。 今日は現在自分がリードして取り組んでいるテストコードの改善について紹介したいと思います。 抱えている課題 私が所属している加盟店精算チームのマイクロサービスは加盟店さま向けサービスとして欠かせないものであり、メルペイ最初期から存在するサービスです。他のマイクロサービスにあまり無い特徴として多数のバッチ処理を行っている点が挙げられます。 お客さま(メルペイユーザー)がお店で行った決済は、一定の頻度で集計し決済手数料を差し引いた上で加盟店さまの銀行口座へ振り込むことになります。 最終的な振込金額を算出するまでの流れとしては 個々の決済金額のリコンサイル(会計マイクロサービスとの金額照合) 日次集計 締

              テストコードの改革を進めている話 | メルカリエンジニアリング
            • 俺の webpack.config.js-20200503 - mizchi's blog

              基本思想 とにかく薄く。必要なものだけ。基本は ts-loader を transpileOnly: true で使うだけ。最悪これだけでいい。型チェックはIDEか yarn tsc -p . --noEmit でやる。 CRA や parcel は使わない。暗黙な振る舞いが多すぎるので。一切勉強したくない人はいれていいと思うが、その場合 eject しない、dist ディレクトリをそのまま使うこと前提。 style-loader/css-loader は外部CSSを読むときに設定する worker-plugin はなくてもいいけど、 worker もビルドしたいことが多いので、入れていることが多い html-webpack-plugin と webpack-dev-server 組み合わせると、他と組み合わせずに完結して動く。このHTMLを本番で使わずとも、デバッグで使ってることが多いの

                俺の webpack.config.js-20200503 - mizchi's blog
              • TechCrunch | Startup and Technology News

                The tech layoff wave is still going strong in 2024. Following significant workforce reductions in 2022 and 2023, this year has already seen 60,000 job cuts across 254 companies, according to independent layoffs tracker Layoffs.fyi. Companies like Tesla, Amazon, Google, TikTok, Snap and Microsoft have conducted sizable layoffs in the first months of 2024. Smaller-sized…

                  TechCrunch | Startup and Technology News
                • 1ms 以下のリアルタイムオブジェクト検出/画像処理を目指して Goの配信サーバサイドで通知ぼかしを実装してみたこと - Mirrativ Tech Blog

                  こんにちは ハタ です。 今回は以前iOSのクライアントサイドで実装していた通知ぼかし機能をサーバサイド(配信サーバ)上に再実装した事を書きたいなと思います 今回はかなり内容を絞りに絞ったのですが、長くなってしまいました、、 目次機能があったのでつけてみました、読み飛ばして読みやすくなった(?)かもしれません 目次 目次 通知ぼかし機能とは サーバサイド通知ぼかし プロトタイプの実装 苦労の始まり その1 画像処理速度 苦労の始まり その2 データ量 さらなる計算量の削減を求めて さらなる最適化へ Halide の世界へ 簡単な halide の紹介 苦労の始まり その3 いざ リリース リリースその後 We are hiring! 通知ぼかし機能とは 通知ぼかし機能は、ミラティブ上での配信中に写り込んでしまったiOSの通知ダイアログをダイアログの中身を見えないようにぼかし処理をしてあげる

                    1ms 以下のリアルタイムオブジェクト検出/画像処理を目指して Goの配信サーバサイドで通知ぼかしを実装してみたこと - Mirrativ Tech Blog
                  • DevOpsは失敗する

                    lbr.より。 BY リー・ブリッグス 初めて聞いた言葉を思い出すのは、ほとんどの人にとって難しいことでしょうが、私は初めて「DevOps」という言葉を聞いた時のことを覚えています。2013年、その時点で私が知っていることのほとんどすべてを教えてくれた同僚とビールを飲んでいるときのことでした。私は幸運にも、自分が始めた新しい仕事に彼を連れてくることができました。彼は、多くの気の利いたことができ、私は彼の力に便乗することができました。私たちは、新しい会社で目にした問題のいくつかを話し合っていました。それは、おそらく今ではほとんど人にとって身近に感じられるものでしょう。アプリケーションが本番稼働しているときのサポートに苦労していたのです。 彼は、私たち全員が同じ考えを持つためには、ライフサイクルの早い段階から関与する必要があると話していました。その時、彼がオーストラリア訛りで言った「DevOp

                    • AWS Lambda CI/CD俺的ベストプラクティス - くりにっき

                      Lambdaで動くアプリやフレームワークの事例はよく見るのですが、LambdaのCIやCDにしやすさに主眼をおいた紹介はあんまり見ないので現時点での自分のベストプラクティスのメモです tl;dr; このエントリで書いていること Lambdaをデプロイするのに肝になること デプロイしやすさに着眼したフレームワーク紹介 論外 コンソールからアップロードする できなくはないがかなり厳しい Terraform Apex 8/12 17:20追記 実用レベル Serverless Framework AWS SAM native extension問題と戦う Amazon LinuxのEC2インスタンス内でビルドする Amazon Linux互換のDockerイメージを使う Serverless Frameworkのプラグインを使う ライブラリをインストールするジョブとデプロイするジョブを分ける 【

                        AWS Lambda CI/CD俺的ベストプラクティス - くりにっき
                      • Azure Functionsが辛すぎて泣きそうになった話

                        はじめに 基本的にAWSエンジニアとして仕事していて、Azureは未経験でしたが案件で採用されて触れる事になりました。 Azure Functionsで処理する所があって私に一任という感じだったのですが、まぁAWS Lambdaみたいなもんでしょと(恐らく他の人も)思ってました。 それがこんな事になろうとは… 必要なリソースが多い まず戸惑ったのがこれです。 関数を書くまでに以下のリソースが必要です。 Azure Functionsのインスタンス(という表現が正確か不明ですが。) Lambdaと違って1つのインスタンスに複数の関数を乗せる形になります(1つ1つ作ってもいいですが…) プラン 料金プランの事だと思えば良いかと。なんですが、プランも1つのリソースなんです。。 Azure Storage アカウント コードや一部の設定情報などが保存されています。 Application Insi

                          Azure Functionsが辛すぎて泣きそうになった話
                        • GitHubの機能をフルに使って職務経歴書の継続的インテグレーションを実現する

                          GitHub で職務経歴書を公開 & 継続的に改善していく環境を作ったのでその紹介です。 リポジトリはこちらです。 kawamataryo/resume なぜ職務経歴書を? 今のチームがとても好きなので転職の予定はないのですが、「安定しているときこそ職務経歴書をまとめておくべき。本当に職務経歴書が必要なときはメンタルが消耗していて書く余裕はない」という話を最近知り合いから聞き、それは確かにと思い書き初めました。どうせ書くなら何か面白いことをしたいなと GitHub に公開 & CI 環境の構築をやってみました。 機能紹介 🌐 GitHub Pages で Web ページとしての公開 Markdown + GitHub のファイルビューでも良いのですが、より見やすいほうが好ましいですよね。 GitHub の無料ホスティグ GitHub Pages を使って Web ページとして公開していま

                            GitHubの機能をフルに使って職務経歴書の継続的インテグレーションを実現する
                          • マイクロソフト、Webアプリのテスト自動化サービス「Microsoft Playwright Testing」プレビュー公開。クロスブラウザ/クロスプラットフォームのテストを並列実行

                            マイクロソフトは、Webアプリケーションのテスト自動化ライブラリ「Playwright」を用いた、Microsoft Azure上のテスト自動化サービス「Microsoft Playwright Testing」のプレビュー公開を発表しました。 Microsoft Playwright Testingに使われている「Playwright」は、マイクロソフトが中心となってオープンソースで開発しているWebアプリケーション向けテスト自動化ライブラリです。対応環境が幅広く柔軟で、精度の高いテストを特長としています。 具体的には、Chrome、Edge、Firefox、Safariの主要なWebブラウザのすべてを対象にしたテスト自動化が可能で、ヘッドレス、ヘッドありのいずれにも対応。モバイルエミュレーションを用いたAndroid版Google ChromeとMobile Safariのテストも、実

                              マイクロソフト、Webアプリのテスト自動化サービス「Microsoft Playwright Testing」プレビュー公開。クロスブラウザ/クロスプラットフォームのテストを並列実行
                            • サーバーアプリ開発環境(Python/FastAPI) | フューチャー技術ブログ

                              Pythonでお仕事する前提で、現在のところで自分が最適と考えるチーム開発のための環境整備についてまとめてみました。今までももろもろ散発的に記事に書いたりしていたのですが、Poetryで環境を作ってみたのと、過去のもろもろの情報がまとまったものが個人的にも欲しかったのでまとめました。前提としては次の通りです。 パッケージ管理や開発環境整備でPoetryを使う 今時はコードフォーマッター、静的チェックは当たり前ですよね? コマンドでテスト実行、コードチェックとか実行とかができる(CI/CD等を考えて) VSCodeでもコマンドで実行しているのと同じコードチェックが可能(ここコンフリクトすると困る) デプロイはDockerイメージ コンテナのデプロイ環境でコンテナに割り当てられたCPU能力を比較的引き出せて、スケールさせたら線形にパフォーマンスアップできるようなasyncioを前提とした環境構

                                サーバーアプリ開発環境(Python/FastAPI) | フューチャー技術ブログ
                              • https://tech.pepabo.com/2021/03/03/ec_efficiency_with_github_actions/

                                  https://tech.pepabo.com/2021/03/03/ec_efficiency_with_github_actions/
                                • 金融を“サービス”として再発明するための技術スタック

                                  こんにちは。Finatextでエンジニアのマネジメントをしている河本です。 当社は「金融を“サービス”として再発明する」をミッションとして掲げ、ビジネスの成長とともに技術領域も拡大させてきました。 エンジニアチームは今、私たちが「BaaS (Brokerage as a Service)」と呼んでいる証券サービスのためのシステム基盤と、そのBaaS上のサービス開発に力を注いでいます。 今回は、そんな当社の技術スタックについて紹介したいと思います。 開発環境・CI/CDGitHubSwaggerSonarCloudPostmanTerraformAWS CodeBuildAWS CodePipelineコードはGitHubで管理され、API 仕様管理には Swagger が使われています。SonarCloud を用いてソースコードの健全性やテストカバレッジの可視化を行っています。API開発の

                                    金融を“サービス”として再発明するための技術スタック
                                  • 開発に使える脆弱性スキャンツール - NTT Communications Engineers' Blog

                                    この記事は、 NTT Communications Advent Calendar 2022 7日目の記事です。 はじめに こんにちは、イノベーションセンター所属の志村と申します。 「Metemcyber」プロジェクトで脅威インテリジェンスに関する内製開発や、「NA4Sec」プロジェクトで攻撃インフラの解明・撲滅に関する技術開発を担当しています。 今回は「開発に使える脆弱性スキャンツール」をテーマに、GitHub Dependabot, Trivy, Grypeといったツールの紹介をさせていただきます。 脆弱性の原因とSCAによるスキャン 現在のソフトウェア開発は、多くのOSSを含む外部のソフトウェアに依存しています。Python、Go、npm など多くの言語は、様々なソフトウェアをパッケージとして利用できるエコシステムを提供しており、この仕組みを利用してOSSなどのコンポーネントをソフト

                                      開発に使える脆弱性スキャンツール - NTT Communications Engineers' Blog
                                    • [翻訳] Shopifyにおけるモジュラモノリスへの移行 - Qiita

                                      こんにちは、食べログシステム本部長の京和です。 本エントリでは Shopify の Engineering Blog から、Kirsten Westeinde による「Deconstructing the Monolith: Designing Software that Maximizes Developer Productivity」を翻訳して掲載します。 食べログではユーザーや飲食店に価値を届けるスピードを最大化するべく、マイクロサービス化などをはじめとしたこれまでの組織やアーキテクチャを刷新するための取り組みを始めています。しかし、マイクロサービスはアプリケーションアーキテクチャとインフラアーキテクチャが複雑に絡み合ったシステムで技術的難易度が非常に高く、適切に構築できなければ「分散されたモノリス」と呼ばれるアンチパターンに陥ります。1 Shopifyではマイクロサービスではなく、

                                        [翻訳] Shopifyにおけるモジュラモノリスへの移行 - Qiita
                                      • カナダで自分の会社を作ってみた - As a Futurist...

                                        カナダで自分の会社を作ってみました。OpsBR といいます。副業のお仕事お待ちしてます! なんのために作ったか 現在は Autify でフルタイムで働いていますが、副業が可能なので少しでも収入を補っていきたいのが一番の目的ではあります。業務委託で個人でやっててもいいのですが、法人を立てることでサービスを作ったりするのもやりやすくなるので、社会勉強も兼ねて会社を作ってみようと思いました。 あと、できればゆくゆくはこっちを収入の中心にできないかなと思ってます。というのも、10 年以上会社員を続けてて、どうしても納得がいかないポイントがあるからです。 これ。僕はお客さんのために仕事したいのに、お金を貰うには同僚のために仕事しないといけないのが、ずっと納得いってない。自分の会社作ったのはそういう理由。 https://t.co/tQawEuSZI6 — Ryosuke Iwanaga (@riyw

                                          カナダで自分の会社を作ってみた - As a Futurist...
                                        • 今からでも遅くない!アプリケーションエンジニアが知っておきたい、Dockerコンテナの基礎知識 / The Basic of Docker Container for Developers

                                          クラウドネイティブを取り巻く技術の中でも、ひときわKubernetes(Dockerコンテナ)は注目を浴びており、様々なシーンで利用が始まっています。本セッションでは、Dockerコンテナが私達にもたらす恩恵や、アプリケーションのコンテナ化に置いて気をつけるべきポイントについて、アプリケーションエンジニアという観点からお話したいと思います。以下の聴講者を主なターゲットとしています: ・Webアプリケーション開発者(フロント/バックエンド/モバイル) ・Dockerをローカルで動かしたことがある/CIなどで既にあるパイプラインなどを利用しているエンジニア ・KubernetesやDockerを、プロダクトに導入してみたいアプリケーション開発者

                                            今からでも遅くない!アプリケーションエンジニアが知っておきたい、Dockerコンテナの基礎知識 / The Basic of Docker Container for Developers
                                          • 「(私のように)セキュリティを何から始めれば良いか分からない開発者の方へ」というセッションを視聴しました! | DevelopersIO

                                            「(私のように)セキュリティを何から始めれば良いか分からない開発者の方へ」というセッションを視聴しました! どうもさいちゃんです。今回はAWS Builders Online Seriesの中から「(私のように)セキュリティを何から始めれば良いか分からない開発者の方へ」というセッションを視聴しました。セキュリティ対策に悩む開発者の方におすすめの記事です。 今回はAWS Builders Online Seriesの中から「(私のように)セキュリティを何から始めれば良いか分からない開発者の方へ」というセッションを視聴しました。 AWS Builders Online SeriesとはAWS初心者向けのオンラインイベントです。 AWSについてこれから学んでいきたい方 初心者向けのテーマを短時間でサックっと勉強したい という方にピッタリなセッションがたっぷり用意されています。今回私が受講した「(

                                              「(私のように)セキュリティを何から始めれば良いか分からない開発者の方へ」というセッションを視聴しました! | DevelopersIO
                                            • コンテナフレンドリーではなかったRailsアプリケーションをDocker(ECS)に移行するまでの戦い - クラウドワークス エンジニアブログ

                                              はじめに SREチームの @minamijoyo です。 先日 CrowdWorks (crowdworks.jp) の本番環境のRailsアプリケーションを Docker (AWS ECS: Elastic Container Service) に移行しました。 CrowdWorksは2012年にサービスを開始し、2019年10月現在、ユーザ数は300万人、月間で数億円規模のお仕事がやりとりされる、国内最大級のクラウドソーシングプラットフォームにまで成長しました。 サービスの規模拡大に合わせて、ソースコードも数十万行規模に成長し、 決して小さくはない規模のRailsアプリケーションに成長しました。 CrowdWorksの開発環境にDockerが導入されたのはもうかれこれ3年半前の2016年の4月頃、2017年1月頃にはCrowdWorks本体から切り出された一部の機能で本番環境に投入され

                                                コンテナフレンドリーではなかったRailsアプリケーションをDocker(ECS)に移行するまでの戦い - クラウドワークス エンジニアブログ
                                              • 日米で経験した炎上プロジェクトの違い|牛尾 剛

                                                私はアメリカでクラウドの中の人をやっている開発者だ。最近アメリカの方でも当初の予定がとても延びたプロジェクトを経験した。このような時に、日本では多分ものすごい炎上プロジェクトになると思うのだが、アメリカで体験したそれは全然違う感じだった。 これは一言でいうと「納期感の違い」がもたらしている感覚だった。 炎上感のなさ 私が感じた「予定がとても延びた」プロジェクトの場合、日本にいたときのプロジェクトでは、受託開発、内製双方ともに物凄く「大問題」になっていた。上位のマネジメントも連日のように進捗の会議を行い、人が追加投入され、エンジニアは時には泊りで一日も早く後れを取り戻すために皆遅くまで、そして土日も働き、お客様はもう怒り心頭… だったと思うのだが、こちらで体験したプロジェクトは拍子抜けするぐらい炎上感が無かった。 当初予定していた日程が一か月以上伸びても、みんな慌てる様子もなく、私はわからな

                                                  日米で経験した炎上プロジェクトの違い|牛尾 剛
                                                • 業務委託テックリードと技術的負債 - LIVESENSE ENGINEER BLOG

                                                  河野と申します。2018年8月からマッハバイトで業務委託(いわゆるフリーランス)として業務に携わっており、2022年6月から、テックリード(以降、TL)という立場となりました。 TLという言葉は広く使われていますが、実際に何をするのかは、会社や環境によってさまざま。 3ヶ月の振り返りがてら、ここに一例として公開してみようと思った次第です。 TL着任以前 Join当初はRailsエンジニアとしての働きを期待されており、最初の担当はマッハバイトiOS版用に、REST APIを開発することでした。 半年少しでその業務が一段落した後は、以下のことなどを担当してきました。 Rails製アプリケーションの機能追加、Ruby、RailsのUpdate ホストOSのUpdateに伴う、deploy環境の修正や、ライブラリなどのUpdate(オンプレ環境) マイクロサービスの中心に置きたいメッセージングサー

                                                    業務委託テックリードと技術的負債 - LIVESENSE ENGINEER BLOG
                                                  • テスト自動化から、 開発を支える継続的テストへ

                                                    2023-11-02 JaSST'23 Kyushu 招待講演 https://www.jasst.jp/symposium/jasst23kyushu.html 実装完了後の手動テストに依存した開発サイクルに継続的テストのアプローチを適用し、段階的に品質を向上する方法について説明しています。

                                                      テスト自動化から、 開発を支える継続的テストへ
                                                    • Kubernetesの自前運用はやっぱりツライらしい - orangeitems’s diary

                                                      Kubernetesの自前運用は難しい これから嫌でもコンテナと戦わなければいかないインフラエンジニアには何度でも読み返してほしい記事です。 www.atmarkit.co.jp はてなのMackerelチームはKubernetesクラスタを自前で構築して運用していたが、撤退を選択したという。なぜ、Kubernetesの運用を諦めて撤退を選んだのか。はてなのMackerelチームでSREを務める今井隼人氏が語った。 考察 この話、20年前のLinux草創期を思い出すんです。 雑誌の付録にLinuxがCD-ROMで付いてたんです。最近のスマートなCentOSとかじゃなくてですね、何Linuxだか忘れたのですがインストールも含めて3日間ぐらいかけて取り組んだんですが結局失敗した記憶があります。 これからKubernetesなりコンテナがやってくるのはここ最近に書いた通りで、早くそっちの世界に行

                                                        Kubernetesの自前運用はやっぱりツライらしい - orangeitems’s diary
                                                      • メルカリを退職し、個人でWebアプリを作りました - urahiroshiの日記

                                                        メルカリでやっていたこと 自分がメルカリに入社したのは2017年12月で、SET(Software Engineer in Test)というポジションに応募して採用されました。 SETはその名の通りテストに対する課題を解決するための役割なのですが、当時のSETチームはテストの実装を行うわけではなく、開発環境や検証環境の運用やCI/CDツールの導入・サポートなどを主な役割としていました。 自分がSETとして応募したのは、前職までの経験で機能開発にやや飽きており、エンジニアとして品質の改善をテーマとして扱っていきたいと考えていたためでした。通常の機能開発ではプロジェクトの要件や期日に沿って開発することが求められますが、SETの業務には要件や期日はなく、何をいつどのように解決するかを自分で判断する必要がありました。チームメンバーやプロジェクトメンバーと話し合い、コードを見ながら現在の開発・運用状

                                                          メルカリを退職し、個人でWebアプリを作りました - urahiroshiの日記
                                                        • Ubie は Go と Node.js の会社になります

                                                          Ubie では、創業当初から Server-Side Kotlin を推進してきましたが、全社的な技術選定を再度行い、これからは Go と Node.js を中心とすることにしました。 本記事では、Go と Node.js を選定した理由や、それを普及させる取り組み、そして選定の流れを紹介します。 経緯 これまで Ubie では技術スタックを発散させてきていて、現在は Kotlin、Go、Node.js、Ruby、Python のバックエンドサービスが動いています。以前は新規開発が多く、それぞれに携わるメンバーが技術選定をすることにより、最大瞬間風速を出せるなどのメリットがありました。しかし、現在では弊害が目立ってきています。 まず、事業成長に伴って運用の重要性が増しています。人材が潤沢とは言えないスタートアップにおいて、様々な技術スタックを安定運用することはコストが高すぎると感じています

                                                            Ubie は Go と Node.js の会社になります
                                                          • 上流工程の“ひと手間”で手戻りリスクは大きく減らせる ソフトウェアテストのプロが贈る、QCD改善のヒント

                                                            「システム開発に関わるコストを減らしたい」「テストでバグが多すぎるので何とかしたい」「テスト工程まで来てから手戻りが発生し、現場がどんどん疲弊していく」。これらの悩みは開発に関わるPM・SEであれば誰もが直面することです。「PM/SEのための上流工程戦略会議」では、2事例を挙げ、上流工程において“少しの手間”を掛けることで、品質とコストに大きな効果を上げることができるポイントを共有しました。全4回。1回目は、上流工程で曖昧な仕様をつぶすための3つの方法について。 篠原新治氏の自己紹介 司会者:本日の登壇者はこちらの方々です。今回はテスト・アライアンス事業部の事業部長である石原さんと、エンタープライズ品質サービス事業部金融ソリューションサービスグループの副部長である畠山さんの2名にご登壇いただきます。Q&Aコーナーのファシリテーターは、グループ開発事業推進部長の篠原さんに務めていただきます。

                                                              上流工程の“ひと手間”で手戻りリスクは大きく減らせる ソフトウェアテストのプロが贈る、QCD改善のヒント
                                                            • VSCode のリモートコンテナ機能を用いて、あるリポジトリ専用の環境を開発者間で統一する

                                                              概要 VSCode のリモートコンテナ機能を用いると、開発環境を dockerfile の形でコード管理することができます。これにより、開発者が開発に用いる環境をリポジトリごとに統一できます。 VSCodeのリモートコンテナ機能とは コンテナの中に開発環境を押し込んで、その中にディレクトリをマウントして開発するVSCodeの機能です。 リモートコンテナ機能を用いて開発するメリット リモートコンテナ機能を用いて開発することには以下のようなメリットがあります。 local環境を汚さない 複数のプロジェクトで開発するにつれて、local マシンにはそのための様々なアプリ・設定が導入されていきます。この状態には以下のような欠点があります。 導入されたアプリや設定が膨大になって管理しきれなくなり、何のために導入されたか、変更してよい設定なのかが分からなくなる 異なるプロジェクトで必要な設定・アプリ同

                                                                VSCode のリモートコンテナ機能を用いて、あるリポジトリ専用の環境を開発者間で統一する
                                                              • HDMIケーブルはどんな制御信号を送っているのか 悪意ある「BadHDMI」を見分けるために知っておくこと

                                                                Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。mzyy94氏はRaspberry Piを使用してHDMIを調査した結果について発表しました。 HDMI制御系に存在する2つのプロトコル「CEC」「DDC」 mzyy94氏:「HDMI探検隊」と題して、LT(ライトニングトーク)をお送りします。自己紹介はさっくりと。元セキュリティ系で今は映像系をやっているエンジニアです。 探検に行く前に「みなさん、HDMIをご存じですか?」というところから、基礎を押さえておきましょう。 知っている人がほとんどだと思いますが、HDMIは、映像と音声を送る端子とケーブル、そしてその通信規格のことです。イーサネット通信や、制御系としての機器コントロールや、ディスプレイコントロールなどもできます。今回はこのHDMI制御系の探検をしていきたいと

                                                                  HDMIケーブルはどんな制御信号を送っているのか 悪意ある「BadHDMI」を見分けるために知っておくこと
                                                                • プログラミングに必要なブレイクスルー

                                                                  Yoyo Code (Matyáš Racek's blog)より。 ソフトウェアの開発方法を劇的に変えるには、いくつかのブレイクスルーが必要だと感じています。ブレイクスルーといった場合、それは大きなブレイクスルーを意味します。例えば、「構造化プログラミング」のブレイクスルーのようなもので、プログラミングに対する私たちの考え方を完全に変えてしまうようなものです。ここでは、それに関するいくつかの見解とアイデアを紹介します。 グルーコードや定型文を書くのは無駄だ 私が書くコードのほとんどは、面白いことはするわけではなく、定型文か、サブシステム同士を繋ぐための糊のようなものです。この種のコードは、すでに何度も書かれていて、これからも何度も書かれるような気がします。それなのに、なぜまた書かなければならないのでしょうか? 問題は、コードがかなり異なっていることで、通常は既存のコードをそのまま使うこと

                                                                  • TDDはゆるく実践しても大丈夫 - 千里霧中

                                                                    最近、TDDのテストコードは捨てても良いかみたいな議論を見ました。 これに対する自分個人の経験上の意見ですが、TDDは雑多にテストコードを使い捨てても効果を出せると思います。 もちろん、TDDで保守性が高く価値あるテストを書いて、捨てずにCIや中長期的なリファクタリングで再利用していくと、TDDの効果を増幅できます。ただ、それをするにはスキルや事前の工夫、労力が必要ですし、できる場面に限りがあります。 そういったことをやらず、もっとゆるい姿勢で取り組んでも、費用対効果をプラスにできる手法がTDDだと考えています。 今回は、そのTDDでゆるくしてもよいポイントを、実経験からまとめたいと思います。 TDDのテストは使い捨てでいい TDDのテストはプログラマのこまごまな課題に応じて累積的に作られるため、保守コストがかかるテスト・保守する価値の低いテストが生まれがちです。そのためテストの使い捨ての

                                                                      TDDはゆるく実践しても大丈夫 - 千里霧中
                                                                    • オンラインドキュメントと日本語全文検索

                                                                      自社では Sphinx というドキュメントツールを利用しているのですが、残念ながらこれに付属している検索機能の日本語検索はかなり厳しいです。また残念ながら Sphinx 開発側も検索周りを改善するという予定は直近ではないようです。 そして検索というのはとても難しい技術なため自分のような素人では導入して「普通に期待する動作」をさせるまでの距離はとても遠いです。 ただ、なんとかして日本語全文検索を実現したいという思いはここ10 年くらいずっと思っていました。これは自社の Sphinx テーマを作ってくれている社員ともよく話をしていたのですが、どうしてもリソースをつぎ込めずにいました。 まとめ日本語検索に対応している Meilisearch を採用したドキュメントスクレイパーの実行は GItHub Actions (Self-hosted Runner) を採用した自社 Sphinx テーマの検

                                                                        オンラインドキュメントと日本語全文検索
                                                                      • 財務諸表というフレームワークで考えるソフトウェア開発と技術的負債|Yoshinobu Wakamatsu

                                                                        この記事は「Funds Advent Calendar 2022」21日目の記事です。 ファンズ株式会社 CTO の若松と申します。 今年も例年通り Twitter の運用は三日坊主となり、 note についても筆を断ったまま2022年を終わりを迎えようとしていたところ、アドベントカレンダーの時期が来ていました。 せっかくの機会ではあるので、以前から漠然と思っていた考えを整理してみたいと思い、この記事では財務諸表を読み解く概念的な考え方を使い、技術的負債について読み解いてみることにしました。 ソフトウェア開発上の概念である"技術的負債"ファンズは、貸付ファンドのオンラインマーケット「Funds」を通じて、個人投資家には着実な資産運用の機会を提供しつつ、企業に対しては借入によるファイナンスの機会を提供しています。そのような事業業態の性質上、コーポレートファイナンス的な考えに触れる機会も一般的

                                                                          財務諸表というフレームワークで考えるソフトウェア開発と技術的負債|Yoshinobu Wakamatsu
                                                                        • 20年でソフトウェア開発の景色はどのぐらい変わったのか? - Qiita

                                                                          PySpa統合思念体です。 某チャットで、「今時のOSSのプロジェクト管理とかのベストプラクティスが書いてある本ないかな、陳腐化早そうだしないか」みたいな話題が投入されました。その中で、エキスパートPythonプログラミングとか、Pythonプロフェッショナルプログラミングとかは思い出して紹介したけど、他の人からはShip It、Manage It、Release It三部作とか、達人プログラマーとかも出てきました。 このあたりの源流を辿ると、そういえば今流行ってる開発の源流としてはエクストリームプログラミングの開発系のプラクティスの遺伝子を受け継いでいるのが多いよな、そういえば当時から見て今ってどう変わっているのかな、という話題に。せっかくなので20年前を思い出しつつ、当時と今でどういう風に変わってきたのか適当にまとめてみます。 20年前の状況 XP白本こと、eXtreme Progra

                                                                            20年でソフトウェア開発の景色はどのぐらい変わったのか? - Qiita
                                                                          • 退職しました - ししちにじゅうはち 4x7=28

                                                                            例の画像をここに貼る どこを 東海地方では有名な大企業D社を退職しました。 実に9年も勤めていたようです*1。 経緯 * 入社前 東北大学院情報科学研究科の大堀研究室にて、プログラミング言語の研究をしていました*2。 自分の研究は、関数型プログラミング言語のSML#コンパイラの内部機構とIDEの支援機能の連携でした*3。 他にも、コンパイラの中間表現をいじったり、授業やゼミでラムダ計算や論理学や並列計算や画像処理や、あれこれやっていたなぁとぼんやり思い出します*4。 学ぶのが好きで大学や大学院の授業は真面目に受けていました。 また、ゼミでは先生や先輩から知識から普段の生活まで様々なことを学ばせてもらいました。 ただ、当時はこの知識の貴重さへの認識が薄かったと思います。 しかし実務をして役立った知識はとても多く、その価値の重さを再認識しています。 * 新人研修時代 大企業らしく、半年以上の長

                                                                              退職しました - ししちにじゅうはち 4x7=28
                                                                            • 自社サービスのバックエンドを Go から TypeScript へ切り替えるための整理

                                                                              切り替える理由 自社の主力製品で利用している技術(WebRTC / WebTransport)がブラウザベースのため TypeScript を利用する Go を採用したのは sqlc が使いたかったという理由 sqlc-gen-typescript が出てきたのでもう Go を使う理由がなくなった 自社サービスチーム全員が Go にまったく興味が無い sqlc 自体は便利 そもそも自社に Go への興味がある人がいない 自社サービスの規模ではボトルネックになるのはデータベースであって言語ではない もしアプリでスケールが必要なときは Rust や Erlang/OTP に切り替えれば良い コネクションプールは PgBouncer を利用すればいい TypeScript からは 1 コネクション 1 接続で問題無い どうせフロントエンドでは TypeScript を書く 自社では React

                                                                                自社サービスのバックエンドを Go から TypeScript へ切り替えるための整理
                                                                              • Kubernetesエンジニア向け開発ツール欲張りセット2022

                                                                                はじめに 本記事では、筆者や筆者の同僚がKubernetes関連の開発をしているときによく利用しているツールを紹介します。 主にKubernetes上で動くプログラムをGoで書いたり、マニフェストのYAMLを書いたりするエンジニアが対象となります。 本記事の内容は極力環境依存を減らし、Linux, WSL2, Macなどの環境で利用可能となっています。 WSL2(Ubuntu 20.04)、およびM1 Macで動作確認していますが、環境によって多少の違いが生じることもあるのでご了承ください。 基本となるツール make & brew 本記事ではmakeコマンドを利用します。 Ubuntuの場合は以下のコマンドでインストールをおこなってください。 Macの場合は、以下のページを参考にHomebrewとCommand line tools for Xcodeをインストールしてください。 Doc

                                                                                  Kubernetesエンジニア向け開発ツール欲張りセット2022
                                                                                • 毎日何度も本番環境にデプロイをしている話 - Mitsuyuki.Shiiba

                                                                                  CircleCI に入って色々と面白いなぁって思いながら毎日楽しんでる。その楽しんでることのひとつに Git のブランチモデルがある。最初はびっくりしたけど、慣れるととても良い 最初に言っておくと、この手法がどこにでも当てはまるとは思ってない。業種や、開発形態、プロダクトのタイプなどによって合うやり方は違う。単に CircleCI には、この手法がとても合ってるなぁと思う トランクベースのブランチモデル タスクに着手するときは、まずメインブランチからそのタスク用のブランチを作る。develop ブランチや release ブランチみたいな長く生きてるブランチはない。そのタスク用のブランチにコミットをプッシュしたらプルリクエストを出す。そして、レビューが終わればメインブランチにマージされる。タスクに着手してからマージまで、はやければ1時間ぐらい。長くてもだいたい2,3日くらい そして、メイン

                                                                                    毎日何度も本番環境にデプロイをしている話 - Mitsuyuki.Shiiba