サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
どうなる?Twitter
tech.uzabase.com
こんにちは。AlphaDrive アプリケーションエンジニアの芥川です。 弊社では選考フローにモブプロ形式のライブコーディング面接を取り入れています(記事内では省略して「コーディング面接」と呼びます)。 私も昨年コーディング面接を受けて AlphaDrive に入社し、この 1 年くらいは面接官を担当するようになりました。 この記事では面接官としてコーディング面接をする上で意識していることを紹介したいと思います。主に「進め方」「フィードバック」「評価観点」について話します。 これから弊社の採用を受けようとしている方はもちろん、採用に携わっていてコーディング面接を導入・検討している方にも参考になればと思います。 本記事は、 NewsPicks Advent Calendar 2022 の 12/24 公開分の記事になります。 qiita.com 前日の記事からの連作です 本記事は前日の CT
はじめに 本記事は、 NewsPicks Advent Calendar 2022 の 12/23 公開分の記事になります。 qiita.com AlphaDrive CTO/NewsPicks 技術フェローのアカザワです。 本記事ではAlphaDriveが2年前にエンジニア組織を立ち上げて以来継続しているモブプロ型のライブコーディング面接が、立ち上げから一貫して内定承諾率を85%以上の水準で継続できていることに大きく寄与している要因の1つだと、入社を決めてくれる仲間が増えるに連れて強く感じるようになったため、この方式の面接を導入した背景や効果について書きたいと思います。 ライブコーディング面接は、昨年度からはNewsPicksのエンジニアチームの採用プロセスにも取り入れられ、ワークショップ面接という呼称で社内で運用しております。そちらに関しては、4日目のNewsPicks CTO/CPO
はじめに 本記事は、NewsPicks Advent Calendar 2022 の 12/22 公開分の記事になります。 こんにちは、Androidチームのアーキテクトのko2icです。 久しぶりの投稿でございます。 なぜ久々なのかというと、ここ数ヶ月Androidの起動時間を爆速にすべく、奮闘していたからです。 そしてなぜ、高速化が必要なのか。これは、ユーザ目線で考えると当たり前でやるべきなのですが、それ以外にもKPIにとてもいい影響が出るからです。 ちなみに以前の会社では起動高速化したことで、広告売上が(インターステシャル広告をなくしても)2倍になりました。全員にとっていいことしかありません。 ちなみにIOS版の途中経過として、以前、iOSエンジニアの森崎が投稿しているので、以下もご覧ください。 tech.uzabase.com 結果から発表 どーん Android起動時間の推移 ど
本記事は、NewsPicks Advent Calendar 2022 の 12/19 公開分の記事になります。 はじめまして、11月からAlphaDriveにJoinし、Webアプリケーションエンジニアをしている畠山(keyamin)です。 今回は、Goで関数のオプション引数を実現するための方法を紹介しようと思います! お題 コーヒーショップを題材に、コーヒーインスタンスを作成するプログラムを考えます。コーヒーファクトリー関数の呼び出し側は、サイズ、ミルクの有無、角砂糖の数を指定することができます。 ※こちらの題材はO'Reilly Japanより出版されている実用 Go言語を参考にしています。めちゃくちゃいい本なので是非読んでみてください...! type Portion int const ( Regular Portion = iota Small Large ) type Cof
本記事は、NewsPicks Advent Calendar 2022 の 12/14 公開分の記事になります。 こんにちは。NewsPicks SREチームの 海老澤 です。 今回は iOSのE2Eテストを実機で動かす上でのインフラ周りの設定方法を紹介しようと思います。 課題 NewsPicksではサーバーリリース時に Firebase Test Labで iOSのE2Eテストを実行していました。 Firebase Test Labは時間帯(夕方くらいになると混んでくる傾向)によってはテスト開始が遅い場合があり、リリースサイクルを高速化するために実機iPhoneでの安定したE2Eテストの実行に取り組みました。 構成図 構成図は以下です。 まずリリース時にAWS Step Functionsから SQSにメッセージを送信し、S3のテスト結果をポーリングします。 受け取り側のMacはSQSメ
こんにちは、NewsPicksエンジニアの桐畑です。 NewsPicks Advent Calendar 2022 の 12 日目です。 全25回の Advent Calenderも、明日から折り返しとなります。 qiita.com 本日は、NewsPicksの動画配信の仕組みを書かせていただければと思います。 NewPicksでは 2017年から動画コンテンツを配信しています。多い時だと毎日、少ない時でも週3本は配信をしています。 5年間、配信の安定化および人手を最小化するためにシステムの改善を続けてきました。当初は動画配信中にエンジニアが待機していましたが、2020年ごろより、エンジニア待機無しで配信をしています。2022年 現在、主にAWSのMediaServices を使った構成になっています。今回は配信形式ごと(ユースケースごと)にどのような仕組みになっているかご紹介させていただ
はじめに こんにちは、NewsPicks エンジニアの佐藤と申します。 NewsPicks Advent Calendar 2022 の11日目を書かせていただきます。 qiita.com 本記事では、2022年秋頃から導入しているプッシュ通知事前テストについてご紹介できればと思います。 NewsPicks のプッシュ通知について NewsPicks では、毎日決まったタイミングに配信する定時プッシュと緊急度の高い情報を含むコンテンツを不定期に配信する速報プッシュの2種類があります。記事の選定は編成チームが行っており、特に定時プッシュに関しては、毎回直前まで、どの記事を送るか吟味しています。 ユーザーのみなさまにいち早く重要な経済情報をお届けするためにも、プッシュ通知は重要な役割を担っています。 プッシュ通知事前テストの導入 今回、プッシュ通知の開封数を改善できないか検討することになりまし
前書き こんにちは。NewsPicksの一人目QAエンジニアの西薗(@yurizono)です。 NewsPicks Advent Calendar 2022 の9日目をお送りします。 qiita.com この記事に書かれていること 2022年に私が取り組んだ、リグレッションテストの改善活動についてお話します。家計簿の話はちょびっとだけします。 テストケースに問題あり 私の入社以前から、NewsPicksでは毎月、アプリのリグレッションテストを外部ベンダーさんにお願いしていました。私がこの運用を引き継いだのですが、数回の実施を通じて、ここで使われているテストケースにいくつか課題が見えてきました。 可読性 まず、読みづらい。私も2年弱ほどテストベンダーに所属していたので分かりますが、月に一度の案件だと、毎回同じテスターをアサインすることは稀です。テストリーダーですら毎回違うかもしれません。そう
初めまして、アプリケーションエンジニアの杉浦(saba_can00)です! 本記事は、NewsPicks Advent Calendar 2022 の12/7 のブログとして記載させていただいています。 この記事でお伝えしたいこと Dockerを利用するようにしたら開発セットアップの時間が大幅に短縮できた! Local環境用にコメントアウトしていた箇所を環境変数で切り替えられるようにしたら、開発者体験が良くなった! 開発セットアップの時間を短縮することで、新しいメンバーの受け入れがスムーズになったよ! ざっくり状況の説明 プロダクトを内製化がスタート 外部の開発会社さんに委託していたシステムを今年(2022年)から内製のチームで引き取って、開発することになりました。 ちょこちょこ設計やいわゆるプロジェクトマネジメント、PRレビューなどでプロダクトのコードについては触れていたもののきちんと向
こんにちは。NewsPicks CPO/CTO の 文字 です。NewsPicks Advent Calendar 2022 の 4 日目を担当します。昨日は 池川さん による Kotlin 知見共有会 ー 社内勉強会を継続させるための工夫 でした。 qiita.com ちょっとキャッチーなタイトルを付けてしまいましたが、今日は NewsPicks のエンジニア採用に関する取り組みと、そこから得た学びについて共有できればと思います。 はじめに おかげさまで NewsPicks は、このご時世には珍しいほど エンジニア採用が絶好調 です。毎月のように素晴らしい仲間たちが、次々と入社してくれています。数値で見ると 2021 年 → 2022 年にかけて、我々のエンジニア採用状況は次のように好転しました(もちろん、採用基準は落としていません。むしろ選考通過率は下がっています)。 しかし昨年までは
こんにちは、NewsPicks サーバーサイドエンジニアの池川です。 NewsPicks Advent Calendar 2022 の 3 日目です。 qiita.com 昨日は、 Virtual Muto さんによる 2 日目の記事で、感想などを書きたいところですが、実は本記事を 11 月末に書いているので、当日のお楽しみにしたいと思います。 本題ですが、NewsPicks では、もともと Java で書かれていたサーバにおいて、Kotlin を全面的に採用しており、現在では Kotlin を変更しない PR はないのではというほど、 Kotlin 開発が浸透しております。 この状態を達成するための設けられた施策の 1 つで、現在も脈々と続いている、「Kotlin 知見共有会」について共有したいと思い、ブログにすることにしました。 背景 どのような会か 運営のやること 登壇者のやること
このブログは NewsPicks Advent Calendar 2022 2日目の記事です。 qiita.com こんにちは。むとうです。 プログラミングって難しいですよね。昔スゴーク頑張って何十行も書いたコードをベテランの人に一行に直されて、衝撃が走ったことを覚えています。手練との歴然とした力の差を見せつけられる、みなさんもそういう経験があるのではないでしょうか? 私はかれこれ20年近くプログラミングを教えてきており、人のコードの書きっぷりを見て「これを身につければもっといい感じにできるのに」と感じることも増えてきました。そういう技は決して難しいものばかりではありません。誰でもすぐに身につけられて一生もののスキルとして使える技の一つに「コレクション処理」があります。実用的なプログラムの多くの部分はコレクション操作で成り立っています。コレクション操作を適切につかえば難しい仕掛けや独自実装
このブログは NewsPicks Advent Calendar 2022 1日目の記事です。 qiita.com NewsPicksのSREチームでリーダーをしている安藤です。 NewsPicksに入社して1年が経ちましたが、最近は円安により親の顔よりもAWS Cost Explorerを見る毎日です。 ということで、コストの話をしていきたいと思います。 NewsPicksでのコンテナ移行について NewsPicksでは、Amazon ECSによる全面コンテナ化を進めています。 本丸の共通バックエンドのコンテナ移行は完了し、AWS Dev Day 2022 Japanでも事例として発表させていただきました。 tech.uzabase.com ここで、「当初はマネージドサービスを優先してFargateを利用するつもりだったが、コストメリットの観点からECS on EC2を選択した」という話
こんにちはNewsPicks SREチームのエドウィンです。 NewsPicksが提案した「「最高の開発者体験」への挑戦 〜Amazon ECSによる全面コンテナ化の軌跡〜」というテーマが「AWS Dev Days Japan 2022」の発表テーマとして選ばれました。 「AWS Dev Day」はAWSさんが開催する「開発を牽引するエンジニアのためのテクニカルカンファレンス」です。 今回の「AWS Dev Day Japan 2022」は2022年11月8日から2022年11月12日の間に開催されて、NewsPicks SREチームリーダー安藤裕紀さんとDay 1の15時のセッションで発表しました。 NewsPicksで行ったメインアプリケーションサーバーのコンテナへの移行とコンテナ化をする事はNewsPicksの開発者体験にどう影響したかについて話してきました。 AWS Dev Day
こんにちは。NewsPicks SREチームの 海老澤 です。 今回はGithub Actionsで実行していたテストを高速化したので紹介したいと思います。 課題 NewsPicksでは Junitのテスト等をGithub Actions から実行しているのですが、2013年のサービス開始当初から存在する、一番コードベースが大きいリポジトリのビルド・テストの実行時間に 20~30分ほどかかっていました。 テスト自体はバグを産まないためにも必要なものですが、時間がかかるため開発効率が下がってしまいます。そのためテスト高速化の取り組みを行いました。 取り組み テストの高速化をする上でやったことは大きく下の二つです テストの並列化 GitHub Actionsから AWS CodeBuild への移行 テストの並列化 maven-surefire-pluginを使うと、pom.xml上での設定を
こんにちは。Product Team の竹原です。 先日、社内用の小さな Web アプリを追加開発する機会がありまして、その際に CI/CD パイプラインの作成も行いました。 CI/CD パイプライン構築のために Argo Workflows を使ってみたところ非常に感触がよかったので、感想などを記載しておこうと思います。 ※ 今回は概要の紹介程度となります。実際に作成したワークフローはまた次回ご紹介します。 Argo Workflows とは Argo Workflows はタイトルで書いたとおりワークフローエンジンです。 エンジニアの身近なところで言えば近いのは Jenkins とか GitHub Actions とかでしょうか。 公式サイト では以下のように紹介されています。 Argo Workflows is an open source container-native work
NewsPicks でサーバーサイドエンジニアを務めている池川です。 サービス運営をされている会社さんであれば、どの会社さんでも何らかの障害を起こし、その対策のための MTG を実施されていると思います。 が、サービスを長く運営していると、過去に発生してしまった事故と似た事故を発生させてしまうということが往々にしてあります。 NewsPicks でも、そのような事故が発生し、どうしたものかということが MTG での話題にのぼりました。 そこで、 NewsPicks ではそのような事故を風化させないための取り組みとして、事故が発生しそうな PR に対して、 GitHub Actions を用いて注意をうながすメンションを投げるワークフローを設定しました。 簡単な取り組みとなっているので、ご参考になれば幸いです。 背景 使用したツール 処理フロー GitHub Actions での実装 実際の
NewsPicks Web Experience Unit でフロントエンドエンジニアをしているじゆんきち(@junkisai)です。 弊チームでは、ここ1年間くらいWeb 版のNewsPicksを新しい基盤に置き換えつつ、見ためも刷新するプロジェクト(以下リニューアルプロジェクト)を進めています。 今回は、弊プロダクトで Visual Regression Testing をはじめて、3ヶ月ほど運用してきたので、今回はその導入や運用にあたっての話をしたいと思います。 導入に至った背景と目的 使用したツールと構成 ツール 構成 導入の流れ ライブラリのインストール storycap の設定 reg-suit の準備 Amazon S3 の準備 Github Actions の設定 運用して出てきた課題と解消 日本語で表示されるはずの部分が□で表示されてしまっている 画像など外部リソースから
こんにちは!Product Teamのtakenokoです。 2022年4月に Ubuntu 22.04 LTS がリリース*1されました。皆さんはもう試されましたか? Ubuntuのアップグレードって、基本的にはdo-release-upgradeコマンドを実行するだけなのですが、久しぶりのアップグレードだったりaptパッケージを長いこと更新していないと、何かと時間が掛かるものです。 そこで今回は細かい補足も交えながら、Ubuntu 20.04 LTS を Ubuntu 22.04 LTS にアップグレードする手順をまとめました。「もう準備OKだよ!」という方は、事前準備を読み飛ばしてもらっても大丈夫かと思います。 目次 目次 Ubuntu LTS について 事前準備 マシンのUbuntuバージョンを確認する アップグレード可能なバージョンを確認する aptパッケージの更新 apt up
こんにちは、ユーザベースの松並です。 ユーザベースのエンジニアカルチャーをゆるっとお伝えするPodcast、Meet UB Tech #23 のテーマは「円安と戦う!SRE」です。 ユーザベースのB2B SaaS事業とNewsPicks、それぞれの開発組織で、今まさに未曾有(みぞう)の円安と戦っているSRE担当の皆さんにお越しいただき、お話を伺いました。 様々なテック企業のSRE担当の方やエンジニアの方だけでなく、クラウドサービスを利用するすべての方にとって有益な回になりました! ぜひ聴いてみてください! open.spotify.com #23の聴きどころはこちら。 タイトル: 「円安と戦う!SRE」 出演者: 安藤裕紀 @integrated1453(NewsPicks Core Development Team SRE Unit ) 釘村亮一(ユーザベース B2B SaaS Busi
こんにちは。みなさんテスト書いてますか? Uzabase FORCAS開発チームです。 今回、FORCASから送っているメールの処理を変更するにあたり、これまで出来ていなかったメールを含むE2Eテストを実施するようにしたので、紹介したいと思います。 課題 FORCASからのメール送信は、Amazon SESのSMTPインターフェイスを利用しています。 E2Eテストを実施するにあたって、費用面や検証の取り回しを考えると、Amazon SESを利用せずにテストできるようにしたいです。 これが、Amazon SES APIのようなHTTPのAPIを利用してメール送信している場合はWireMock 等でHTTP APIのモックサーバーをたてれば簡単にテストできます。 しかし、SMTPを利用しているのでそう簡単にはいきません。 SMTPでメールを受け付けることができ、なおかつメールの内容を検証できる
こんにちはこんにちは!!あやぴーです。 最近の仕事ではF#を使ったり、Clojureを使ったりすることが多いのですが、今日は久しぶりにClojureの話を書きます。 Clojureでテスト書くときに一緒に使うライブラリ何使ってますか? アプリケーションでユニットテストレベルのテストを書くとき、どういうライブラリを一緒に使っていますか?Kaocha?Midje?test.check?shrubbery?Flare? 今回は最近いくつかのプロジェクトで使っていて使い勝手がよかったものを2つ紹介しようと思っています。 テスト対象が依存する関数をモックしたい - mockfn Clojureはいわゆる関数プログラミングを行うことができる言語で、オブジェクト指向言語に見られるような、オブジェクト生成時に外部から依存するオブジェクトをインジェクションして、テストをしやすいようにするというような実装を行
みなさんこんにちは。NewsPickでiOSアプリの開発をしている森崎です。 当記事ではどのアプリも一度は見直しを検討したことがあるであろう、アプリの起動時間の高速化についてお話しします。 他の記事で起動時の処理や高速化への改善策を書いたので、ここでは具体的に行ったこととその結果を数字とともに書きたいと思います。 ⬇️起動時の処理や高速化への改善策を書いた記事です。 こちらを読んでもらうと、当記事の内容がより理解できると思います。(読まなくてももちろんわかります!) qiita.com 今回はSystem Interface Initializationの箇所の見直をしました。(⬇︎この箇所) InstrumentsのApp Launchの計測結果 System Interface Initializationでは何をしているのか この項の内容は上記ブログに書いてあります。すでに読んで下さ
はじめに こんにちは! NewsPicksの法人向けサービス開発チームの森です。 入社から約3ヶ月経ったので、入社エントリーを書いてみようと思います! …が!タイトルにも匂わせた通り、私の前職は営業職@メーカーで、エンジニアとして働くのはNewsPicksが初めてですし、テックブログという文化に触れるのも初めてです。 「入社エントリーって何書けばいいんや…」というのが本音です。 何を書けば良いかわからないなりに、このブログを読んで「NewsPicks/Uzabaseってメンバー同士リスペクトし合っている素敵な会社っぽいな〜」と思ってくださる方が1人でも増えたらいいな、という気持ちで一生懸命書こうと思いますので、もしよろしければ最後までお付き合いいただけると嬉しいです! はじめに どうしてエンジニアに? 作り手になりたいと思ったから プログラミングって面白いと思ったから 専門性を持ちたいと思
皆様はじめまして! NewsPicks SREチームの中川です。 本日はコンテナイメージのバージョン管理についての記事をお届けします。 概要 NewsPicksではECSやKubernetesに代表されるコンテナサービスを使用しておりますが、コンテナのデザインパターンとしてサイドカーパターンを採用しているサービスがあります。 詳しい説明は省きますが、サイドカーはメインアプリケーション用コンテナを補助するコンテナです。 これらのサービスをデプロイするとき、サイドカー毎に使用するDockerfileを ImageTag で指定していました。 実際には latest で固定するか、特定のImageTagを設定ファイルに書き込んで運用していました。 こうした運用方法の場合、Dockerfileを変更するときは事前にイメージを登録しておく必要があり、マニュアルで作業する必要がありました。 ざっくり言
こんにちは。AlphaDrive フロントエンドエンジニアの aku11i です。 Next.js で開発中のプロジェクトに New Relic APM / Browser を導入しました。 実は前にも対応したことがあったのでこれで2度目ですが、改めて調べ直したところ @newrelic/next というパッケージが新しく公開されていました。 Node.js エージェントをそのまま使う方法に比べて確認できる情報が増えるなどメリットがありましたので紹介したいと思います。 ※ この記事で紹介する内容は 2022 年 8 月時点のものです。今後情報が古くなる可能性がありますのでご注意ください。 また、今回記事にするにあたって検証に使用したコードを公開しています。以降は導入手順と共にこのPRでの変更差分も紹介します。 github.com @newrelic/next パッケージについて http
こんにちは。ユーザベース TechBrandingチームです。 2022年7月28日(木)にオンラインイベントイベント「NewsPicksでのモバイルアプリの技術的負債解消方法 - TechBase vol.2」を開催しました。弊社のNewsPicks アプリ開発チーム リーダー 石井 幸次 (@ko2ic)と、株式会社ニューズピックス Product Division iOSアプリエンジニア 金子 雄大 (@takehilo_kaneko)が登壇しました。 当日は100名以上の方にご参加頂き、沢山の反響を頂き大変盛り上がりました! 登壇者について NewsPicks アプリ開発チーム リーダー 石井 幸次 (@ko2ic) 2003年にサーバーサイドエンジニアとしてキャリアをスタート。ECサイト・パッケージソフト・基幹システムなど様々なプロジェクトでアーキテクトとして参加。その後、C向け
NewsPicksの高山です。 今回は、AWSのコストを我々がどのように定点観測しているかを書いていきます。 あわよくば他社さんも事例を広く共有してもらえて業界全体の共有知が増えることに繋がってほしい狙いがあります。 NewsPicksでは過去2年ぐらいかけて地道にコストモニタリングのオペレーションを作ってきました。手法としては、毎週コストモニタリング担当のメンバーで定例ミーティングをして、以下の手順をやりながら議事録にまとめていきます。 毎週のオペレーション コスト異常検出 コスト異常検出という機能の画面を見て、最近大きく変化したリソースを調査します。 異常検出はメールでも通知していますが、毎週のオペレーションとして一つ一つ詳しく見ていく「トリアージ」をしないと放置してしまうので、コストモニタリングの定例で必ず見るようにしています。 このように影響の大きかった項目を見て、Cost Exp
ユーザベースでは、「エンジニアリングを起点に、誰もがビジネスを楽しめる世界を実現したい」という想いから、2022年4月より「Play Engineering」というプロジェクトを推進しています。 このプロジェクトでは、エンジニアではない職種のメンバーも楽しくエンジニアリングを学べる研修の実施や、保有するエンジニアリングスキルのレベルによって手当が支給される制度「プラスエンジニアリング手当」の導入など、さまざまな取り組みをおこなっています。エンジニア以外の多様な職種のメンバーたちにも、エンジニアリングに慣れ親しみ、業務に活かしてほしいという目的もあるため、上記の施策は全社員が対象となっているのも特徴です。 今回は、プロジェクトの一環として2022年6月に開催された社内イベント「親子プログラミング教室」についてレポートします。 初の「親子プログラミング教室」がスタート! 社内イベントとしては初
次のページ
このページを最初にブックマークしてみませんか?
『UZABASE Tech』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く