こんにちは、エンタープライズビジネスエンジニアリング部門 購買ソリューショングループの河本です。 今回はモノタロウのECサイトとして一般的に広く知られているmonotaro.comではなく、年40%増の急成長事業である購買管理システム事業(以降、大企業連携と呼びます)のシステムの概要を説明します。後半には、売上向上に直結する新規連携開発業務の苦労や面白さも掲載しています。ぜひご覧ください。 購買管理システム事業(大企業連携)とは 大企業連携システムの概要 ユーザーが商品を購買する流れ 大企業連携…
YAPC::Kyoto 2023 めっちゃ最高でした。オフラインカンファレンスはやっぱり参加すると楽しいー! YAPC::Kyoto 2023 Reject Con YAPC::Kyoto 2023 は個人スポンサーとして参加しました。ついでに最近やっていることを話したいなと思い応募したのですが落選してしまいました。しかし、スタッフの素敵な心遣いで前日祭の Reject Con で話せることになりました。以下は当日私が話したことの要約です。
AWSのログ管理についてはいくつか考えるポイントがあると思います。 どのログを保存するか。 CloudWatch Logs(以下CW Logsと記載)とS3のどちらに保存するか、もしくは両方に保存するか などなど。 システムの特性によるところも多いかと思いますが、自分の中でのログ管理のベースラインが定まりつつあるので、頭の整理がてらまとめます。 自分の中での大まかな方針としては以下です。 S3に保存できるものは基本S3に保存する。 以下の場合は、CW Logsに保存する。必要に応じてS3に転送す…
こんにちは、ujihisa といいます。現在スタディサプリのProduct Platform Team で Product Platform Engineerとして仕事を行っています。 Ruby 3.2 3ヶ月ちょっと前の2022-12-25 (JST) に、Ruby 3.2.0がリリース されました。2023-03-05現在の最新安定版はRuby 3.2.1です。 スタディサプリではRailsなどのwebアプリケーションが26個あり、それ以外も含めると全部で29個のRubyのプロジェクトがあり…
こんにちは、LayerXのエンジニア id:kikuchy です。 このnoteは「LayerXアドベントカレンダー2023春」の12日目の記事 です。 今回は、LayerXの行動指針の1つである「Trustful Team」をテーマにお送りします。前回はフィールドセールスの @hiroki_naka0121 さんによる「LayerX・バクラクフィールドセールスのオンボーディング・イネーブリングへの取り組み〜入社1か月の視点から〜」でした。 来週はカスタマーサクセスの @tomo_rim さんが…
イノベーションセンターの三島です。 本記事では、RFC や Internet-Draft に準拠したコントローラーやプロトコルライブラリの開発について、 NTT Com が公開中の Segment Routing (SR) 用のコントローラー、Pola PCE の開発経験を基にご紹介します。 商用機器と相互接続可能なコントローラー・プロトコルライブラリを開発してみたい方、SR をはじめとするネットワークを運用中で、機能拡張が可能なコントローラーを導入してみたい方は是非ご覧ください! 以降では、コ…
はじめに こんにちは。計測プラットフォーム開発本部バックエンドチームの佐次田です。普段はZOZOMATやZOZOGLASSなどの計測技術に関わるシステムの開発、運用に携わっています。去年の夏に、ZOZOFITというサービスを北米向けにローンチしました。 本記事では、ZOZOFITのローンチまでに遭遇した意思決定における課題と、ADRというドキュメンテーション手法を用いた解決までの取り組みについて紹介します。 目次 はじめに 目次 計測プラットフォーム開発本部 バックエンドチームとは ZOZOFI…
このブログ記事はいわゆる転職ブログです。昨日3/16が現職の最終出社日だったので、公開するものです。 ただし、よくある転職ブログのように、元職場や新しい職場を大きく取り上げて評価することを意図したものではありません。 僕は転職活動をするのがこれで3回目になるのですが、今回は転職活動そのものがめちゃめちゃ面白く、ものすごく得るものが多かったので、その体験のうち公開できそうなところだけをとりあえず書き残そうという試みです。ちなみに長いです。 目次 目次 どこに転職するの そもそもお前は何者なの なぜ…
はてのの開発話ではないけど、早速GPT4でどんなことができるのか試してみたのでネタをひとつ。 今回はこの増田のおもしろポイントをGPT3.5とGPT4で解説してもらい違いを比較してみたよ。 このおもしろと呼べるかもよくわからない文章をAIは果たして解読できるのか。 anond.hatelabo.jp 質問文はどちらも同じ。見切れちゃってるけど増田の全文が入ってる。 特になんの工夫もなく適当におもしろポイントを解説してもらったよ。 まずはGPT3.5 空海という名前がポイントであること、出会いが意…
READYFORでアプリケーションアーキテクトを務め、システム設計やリファクタリングについて第一線で発信をする仙塲大也さん。ネット上ではミノ駆動(@MinoDriven)の名前で活動しています。 著書の『良いコード/悪いコードで学ぶ設計入門』は、2022年4月の発売から10カ月で3万部を超え、「ITエンジニア本大賞2023」の技術書部門大賞を受賞しました。 そのプレゼン大会でミノ駆動さんは、「みんなで強くなる」「昔の自分を助けに行く」という思いで本を執筆したと語り、大賞受賞スピーチでは感極まって…
うりうりさんの↓のコメントを見て、そういえばnpm ciって見たことあるけどチェックしてないなぁ。というかnpm installも雰囲気で使ってるなぁ。と思ったので、うりうりさんに教えてもらったことを手がかりに、npm installとnpm ciについて調べた。 これ、node_modulesキャッシュしてたりnpm install使ってるけどnpmのグローバルキャッシュ(~/.npm)をキャッシュした上でnpm ciで早くなったりしないんだろうかGitHub Actions上でテストを約3倍…
Rails(というかActiveRecord)に型を付けるのは大変だが、Railsが絡まないrubygemにはそんなに苦労なく型が書けるので、これからgemを書く時には型を書きたいという人向けに今のところオススメの設定を紹介します。 というか自分が忘れるのでまとめておきます。 現状とはsteep-1.3.1, rbs-2.8.4を指します。 rbsは既に3系が出ていますが、一般利用者が型検査に利用する場合はsteepを使うはずで、steepはまだrbsの3系に対応していません。また、rbs-3.…
Nstock CEO / SmartHR 創業者の宮田です。 「SmartHR はもうスタートアップではない」 創業者の私は、ここ1〜2年そう考えていました。 しかし、それは誤りでした。SmartHR は規模こそ大きくなりましたが、そのカルチャーは今もスタートアップそのものでした。いえ、もしかしたら昔よりもスタートアップしているかもしれません。 新 CEO の芹澤さんが3人だけの非公式チームをつくり、自らもコードを書き、社内課題を解決するプロダクトを自社プラットフォーム上で動かしている。 プロダ…
NewsPicks エンジニアの中村です。普段はデータ基盤や機械学習システムの開発、運用をやっています。 さて皆さん、すでにChatGPTは使っていらっしゃるでしょうか。エンジニア、非エンジニアを問わず世の中を席巻している感のある ChatGPT ですが、今月初めにいよいよ API も公開されて、アプリケーションやサービスに組み込みたいと考えている方も多いのではないでしょうか1。 というわけで、弊社でもこの新しい技術をより多くのエンジニアに使いこなせるようになってもらいたいと考え、ChatGPT…
ドキュメンタリアンとは、役職に関係なく、ソフトウェア業界でドキュメントとコミュニケーションに関心を持つ人のことです。 www.writethedocs.org はじめに これは主に『ユーザーの問題解決とプロダクトの成功を導く エンジニアのためのドキュメントライティング』の書評です。私はSreakeにてSREという役職についています。SREはサービス概要、アーキテクチャの解説や図、各種構成図、各種手順書、ポストモーテム、ポリシー、SLA(SLO) … その他の様々な場面でドキュメントを書く必要があ…
初めまして!2023年3月前半にエムスリーのAIチームで10日間インターンに参加していた小栗 (@irungo_ic )です。 インターンでは、エムスリー発の機械学習パイプラインOSSであるgokart をKubernetes上で高速にかつ簡単に実行できるようになるライブラリであるkannon('cannon'と同じ発音!)をゼロから実装し、OSSとして公開しました。 github.com この記事ではkannonの技術的な解説、インターンに参加した感想をお伝えします! gokartの概要 go…
はじめに こんにちは。ブランドソリューション開発本部FAANSバックエンドブロックの田村です。普段はサーバサイドエンジニアとしてFAANSのバックエンドシステムの開発をしています。 FAANSとは、弊社が2022年8月に正式ローンチした、アパレル店舗のショップスタッフの販売サポートツールです。FAANSでは、データベースとしてGCPのサーバレスでドキュメント指向のNoSQLデータベースであるCloud Firestoreを当初採用していました。Cloud Firestoreはサーバレスなので運用…
一番星はてのについては下記記事を読んでください。 anond.hatelabo.jp 開発経過を報告するためにブログを作ったよ。 今後やりたいことはいろいろあるけど例えば下記とかをやりたいと思ってる。 感情をもっと表に出した投稿をする ブコメへのスター付与機能 AITuber化 はてのによるブログ投稿 今後も一番星はてのを応援してね。
今回は、OpenAPI Specification から良い感じのドキュメントサイトを提供してくれるサービス bump.sh を見つけたので、RESTful API を用意して試してみます。 ドキュメントサイトがあることで、API が公開されていることがより分かりやすくなるでしょう。 こちらはスキーマの差分を解析するツール API Diff · Powered by Bump.sh を提供しており、今後 GraphQL もサポートされるそうなので楽しみです。 RESTful API まずは JS…
前回のあらすじ Ruby Parser開発日誌 (4) - かねこにっき Error Recoveryに関する理解も深まり、Rubyのparserへ実装するために3つの実装方法を検討しましたが、どれもあまり簡単な方法ではありませんでした。この問題を解決するためにLALR parser generatorを実装したので今回はその紹介をしたいとおもいます。 Lrama LALR (1) parser generator github.com 前回検討したとおりBisonを使ってError Recov…
メディアドゥでは、エンジニア有志によって執筆された【Tech Do Book】という合同誌を発行しています。 本日はその中から、Tech Do Book vol.1 【2章 やさしいEPUB入門】を紹介します。
はじめに こんにちは。セキュリティエンジニアの@okazu_dmです。 皆さんはブラウザにおいてLocal StorageやCookieに格納されている値が暗号化されているかどうかを考えたことはあるでしょうか。これらWebサービスの認証・認可において使われるデータが、XSSのようなアプリケーションの脆弱性への耐性に差があるかどうかは頻繁に議論されるところです。 しかし、ブラウザに保存されたデータが暗号化されているかどうかはまた別の攻撃経路への耐性の話であり、馴染みがないのではないでしょうか。 こ…
こんにちは 堤です。 3月1日にChatGPTのAPIが公開されました。 openai.com APIが公開されたことでChatGPTを活用したアプリが色々登場して盛り上がっていますね! 今回はPythonのみで簡単にWebアプリを作成できるStreamlitとChatGPT APIを組み合わせて簡単にAIアプリを作成する方法をご紹介します。 Streamlitについて StreamlitはフロントもバックエンドもPythonのみの記述でWebアプリケーションを作成できるフレームワークです。 s…
ChatGPTに特定の機能を持つコードのスニペットを書くように頼むのはよくある使い方だ。ただChatGPTは回答の長さに制限があるので、あまり長いコードの出力をお願いするのは現実的ではない。プログラム全体の仕様をプロンプトで投げて、そのコードを返してもらう、みたいな使い方はまだ難しい。 でもジェネレーティブアートみたいな、比較的短いコードでプログラムが完結するものであれば、プログラムコード全体を出力してもらうのも現実的だ。 例えば以下のプロンプトで、p5.jsで書かれたジェネレーティブアートっぽ…
Go言語プログラミングエッセンス エンジニア選書作者:mattn技術評論社Amazon 『Go言語プログラミングエッセンス』、C言語の勉強に役立つなぁ(?)— magnoliak🍧 (@magnolia_k_) 2023年3月11日 普段、Go言語のコードを書くことは無いのだけど、ざっと読むくらいのスキルは身につけておきたいなーと思って、『Go言語プログラミングエッセンス』を読み始めた。 単に言語の仕様とか、ツールの使い方を知りたいだけならば公式ドキュメントを読んで、他の人のコードを読んで、実際…
Software Design「データベース速攻入門」に「SQL50本ノック」が掲載されました - LIVESENSE ENGINEER BLOG 最近では、postgres-wasmなど、WebブラウザでDBを動かせるようになってきており、もう少しすれば、WebAssemblyを使って、ブラウザですぐにノックを始められるようになるかもしれません。もしも、また何年か後に記事を更新する機会があれば、試してみたいですね。 Web上からすぐに試せるpostgres-wasmはPagilaのデータを持っ…
何の話かと言うと enakai00.hatenablog.com上記の記事を自分用のメモ程度の気分で公開したら、思いの外に多数のブックマークやコメントが付いて驚いた上に、「この内容では結局 React やっている人にしか理解できないのでは?」という趣旨のコメントを目にして残念な気持ちになったので、あらためて、React をまったく知らない方を前提とした React の入門記事を書いてみることにしました。特別に「バックエンドエンジニアのため」という要素はないかもしれませんが、私自身がバックエンドの…
ChatGPTにコーディング能力でも敗北しました この前、ChatGPTに文章能力で敗北したというブログ記事を書きました。 今回は、文章に続いてコーディング能力でも完全敗北したという話です。 きっかけは、以下の妻の「複数ページのPDFを1つずつ別ファイルで保存する作業を自動化するプログラム」のお願いです。 単純作業が辛いから、アレをあーしてこーしてくれるプログラム書いて😥と思いついちゃったので、いつもなら @karaage0703 先生に言うんだけど、絶賛社畜中で毎日遅くて可哀想なので、仕事増や…
社内勉強会で「40歳過ぎてもエンジニアでいるためにやっていること」というタイトルで、今まで継続してきたことを発表しました。 40歳過ぎてもエンジニアでいるためにやっていること from onozaty 定年までエンジニアとしてやっていきたいと思っているので、今後も今までやってきたことを継続出来れば、、と思っています。
id:nishiohirokazuさん作のScrapboxの情報をChat GPTに流し込んで対話するスクリプトがおもしろそうだったので動かして遊んでみていた。 自分のScrapboxをChatGPTにつないだ - 西尾泰和のScrapbox自分のScrapboxからおすすめサウナを案内してもらえた。おもしろい。自分のはてなブログとも対話したい。 https://t.co/7L51YPVURe pic.twitter.com/ijVXEFDXGl— 趣味はマリンスポーツです (@hitode90…
フィルムも高騰して、年々、倍々でフィルムカメラで撮ることをバイバイしている人も多いのと思う。 これだけ値上がりすると、「昭和の頃の値段と比べても高くない」と言われても、実際のお財布感覚とはかけ離れたものだ。(それでも買うかな) 昭和のフィルムカメラで撮る時は記念日とかだけでお正月にフィルムを入れて年末に現像に出すレベル。 一般的なフィルムカメラは1980年〜90年代に量販されたコンパクトフィルムカメラがそうだと思う。 どこか出かけた時になど、記念に撮るという感覚。 父の形見カメラに50mm f1…
皆さんこんにちは。データサイエンティストチームYAMALEXのSsk1029Takashiです。 YAMALEXは Acroquest 社内で発足した、会社の未来の技術を創る、機械学習がメインテーマのデータサイエンスチームです。この記事はGPTでチャットボットを作ってみるシリーズ第3弾です。 第1弾と第2弾もぜひご覧ください。 acro-engineer.hatenablog.com acro-engineer.hatenablog.com第1弾では、GPTになるべく正確な回答をさせるために、回…
昨日(もう日付余裕で回ってるので一昨日だな)Findy さん主催のイベントで話してきた。 speakerdeck.com 背景 近年「エンジニアは事業貢献してこそ」「エンジニアもユーザファーストでビジネス貢献」といった言説がIT界隈で増えて来ている感じがしている。 ……とたまたま昨日関連してるようなしてないような話をしている エンジニアとビジネスの距離感の難しさ|ばんくし|note という記事があったので書き出しを真似してみたんだけど。 昨今、ビルドトラップに陥るな、アウトプットじゃなくアウトカ…
OpenAIでGPTを使ったAPIにembeddingというのがあって、これを使うと文章同士の距離がとれるので、近いエントリを取得したり文章から検索したりができるということで、試してみました。 思いのほかちゃんと動きました。おそらく、GPTで一番実用的なんじゃないでしょうか。 GPTで実際に一番出番がありそうなEmbeddingを使った、近いブログをとってきたり検索したりするやつ。 pic.twitter.com/Vzgy57a7ju— きしだൠ(K1S) (@kis) 2023年3月9日 em…
はじめに コミューンでQAをしています金丸です。 最近QA界隈でAIを用いたソフトウェア開発が注目を集めています。 www.kzsuzuki.com 多くはChatGPTを用いたものですがちょうど先月にNotion AIがリリースされたので今回Notion AIがソフトウェア開発のテスト部分に対して有用に使うことができるかについて記事を書いていきたいと思います。 結論から言うと、実用としての運用は未だ難しいがQAの補佐的な位置付けとしては十分な働きをしてくれることがわかりました。
デジタルアーカイブのためのプログラミングレッスン、というのを少し作成してみています。今のところ、第一回~第四回ができております。 デジタルアーカイブに興味を持ったり、関わったりしているものの、内容面だけでなく技術面からも本格的に取り組もうと思って普通に一からプログラミングを勉強しようとすると、何に役立つのかのイメージを持ちにくくてなかなか気が進まない、という経験をお持ちの方は少なくないと思います。 そんな弱まりがちな気持ちをブーストするために、あるいは、かつてやめてしまったことに再挑戦するために…
タダです. AWS 利用料のうち CloudWatch Logs への取り込みが高くかかっていました( DataProcessing-Bytes という項目).そこで,下記のページを参照して調べてみたところ一番容量があったのが Aurora のログでした.そのログを CloudWatch Logs に出力せずダウンロードし,S3 などにアップロードしていけばコスト削減に繋がりそうです.この記事では,ダウンロードを Python でやってみた内容をまとめていきます. aws.amazon.com …
そんな皆さまの疑問にお答えします。 スタートアップのアーキテクチャがブッ壊れてるのってなんでェ? 先にざっくりまとめましょう。 巷でよく言及されるのはカネ、つまりは雇用するエンジニアの能力問題を元凶とする方が多いようです。 スタートアップの内情を知っていれば金と雇用の問題がどれだけ切実であるかについて異論を唱える人はいないとおもいます。しかし僕の考えによればこれはスタートアップのソフトウェア開発が抱える問題のうちのひとつ側面にすぎません。 つまりどんなに優秀な人間をかき集めようがスタートアップの…
Winnyはどこか殺伐としていた2chのコミュニティ群の中にあって、比較的穏健な開発系コミュニティの中で生まれた。このコミュニティではある意味牧歌的に技術の追求・研究が行われていたため、当時を知るコミュニティ参加者からすると懐かしさを覚えるくらいで否定的な感情はほとんど無い。技術の進歩を目の当たりにする、当時のワクワク感を思い起こす人すら居るのではないだろうか。対してWinnyとそこにばら撒かれたAntinny以降のさまざまなウイルスによる世間の喧噪のまっただ中に居て、暴露ウイルスが引き起こした…
こんにちは!ROUTE06 Software Engineerの@yoshida-m-3です。 GitHub Projectsがアップデートを続けていることは知っていましたが、実際のプロジェクトで使用できるかは確証がありませんでした。そこでチーム内でGitHub Projectsの勉強会を開催し、実際に検証することにしました。 見るべき人に見るべき情報を確実に届けたい プロジェクト情報の管理において、「各関係者に適切な粒度で情報を確実に届けること」が重要だと考えています。 情報の可視化にはカンバ…
【 デジスマチーム ブログリレー2日目】 エンジニアリングGの立花です。 デジスマ診療 というサービスのアプリ(Flutter)、バックエンド、フロントエンドの開発をしています、宜しくお願いします。 最近低レイヤーの技術に興味があり、趣味でRISC-Vの勉強をしています。 今回は実際に実行ファイルを動かすことが出来るRISC-VシミュレータをRustで実装していきます。 はじめに こちらの記事は、先日エムスリー社内LT会であるTechTalkで発表した内容で後日動画を公開予定です。 また、実装し…
はじめに NineOCR とは NineOCR が抱える課題 Amazon SageMaker Training とは SageMaker Training の始め方 事前準備 AWS が提供しているコンテナイメージを拡張する方法 独自のコンテナイメージに SageMaker Training Toolkit をインストールする方法 スクラッチでコンテナイメージを作成する方法 まとめ 学習ジョブの実行 学習結果の確認 終わりに はじめに こんにちは、研究開発部の石井です。 本エントリーでは、弊社…
何の話かと言うと 普段、UI に関わらないバックエンドのコンポーネントを作っているエンジニアがフロントエンドのコーディングを理解しようとすると、色々と異次元な世界で混乱する(というか何をやっているのかをすぐに忘れる)ので、バックエンドエンジニアにわかりやすい形で React の仕組み(メンタルモデル)をまとめてみました*1。 ブラウザの画面に描画される個々の要素を「コンポーネント」と呼ぶ。 自分で定義したコンポーネントを HTML タグを使って表示することができる。 コンポーネントは関数として定…
いつもはてなブックマークをご利用いただき誠にありがとうございます。はてなブックマーク開発チーム、ディレクターのid:yone-yamaです。 2023年3月6日(月)にリリースしたはてなブックマークアプリの最新バージョンより、過去のブックマークをグラフとともに振り返る新機能「アクティビティ」の提供を開始しましたのでお知らせいたします。 「アクティビティ」機能について 画面イメージ(iOS) 画面イメージ(Android) 機能リリースの背景 ブックマーク検索機能について 「アクティビティ」機能に…
2023年3月2日、国土交通省近畿地方整備局が管理する河川監視用カメラが不正アクセスの被害に遭っていた可能性があると報じられました。ここでは関連する情報をまとめます。 インターネット接続した河川監視カメラに不正アクセスか 国土交通省近畿地方整備局が管理する河川監視用のカメラ 261台に対して、不正アクセスされた形跡が2023年1月中旬に確認された。その後中国地方整備局、四国地方整備局の管理する70台の同じカメラでも不具合の恐れが確認され、合計で331台(338台との報道もあり)のカメラの運用が休…
はじめに 『天才』はつくれる 競技プログラミング同好会競技就活部門 Google は世界最高のプログラミングスクールである 雇用形態と働き方 ソフトウェアエンジニア (SWE) Google でのお仕事 Google の面接の内容 Google の面接の問題の種類 コーディングクイズ 知識を吐き出す系 Open-ended question システムデザイン Google の面接の評価基準と対策方法 知識 技能 マインドセット Google の面接のタブー Google の面接の心構え 面接官へ…