サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
WBC 侍ジャパン
tech.dely.jp
こんにちは、クラシルAndroidエンジニアの@MeilCliです。近々、クラシル内のレシピ保存機能においてクラシルショートとレシピカードも保存できるようにするという変更が入ります。それの開発に際して、ページングのあるAPIにおいて更新されうるコンテンツをどう表示していくかを開発チーム内で話し合い、理想と思うものを実装したのでそれの共有を行います 当記事は前後編の前編にあたり、どう表示していくかの考え方についてご説明します 更新されうるコンテンツの理想的なUX まず、どういうことが問題になっているのか説明します ユーザーが保存タブを開いたときの表示、つまり自分が保存しているレシピ一覧についてですが、保存タブからそのレシピの詳細画面を開き保存を解除したとします。この時点で保存タブを開いていたときから保存しているレシピ一覧が変わっていることになります。そして保存タブに戻ってきた時の表示はどのよ
こんにちは、クラシルAndroidエンジニアの@MeilCliです。先日Androidチームで設計についてお互いの認識を合わせ、今後のクラシルAndroidのアーキテクチャー設計をどうするか決めたので共有します 基本的な考えについてはテックリードのうめもりさんが書いた記事にありますのでよかったら読んでください*1 tech.dely.jp レイヤー構成 レイヤー構成 クラシルAndroidには3つのレイヤーが存在します UI Layer Viewの描画・ユーザ操作のハンドリング・ViewにまつわるStateの管理 Domain Layer データの加工・UI Layerへの公開 Data Layer データ操作を提供 それぞれのレイヤーにおいて複数のクラスが関わってきますが、今の所Domain LayerにはUseCase、Data Layerにはプリミティブなデータ操作を提供するData
はじめに こんにちは。クラシルのAndroidアプリチームのテックリードのうめもりです。 android-developers.googleblog.com 12/14に新しいアプリアーキテクチャガイドがAndroid公式からアナウンスされました。読まれた方もいらっしゃると思いますが、非常によくまとまったアーキテクチャガイドであり、新しくアプリを作る際も、既存のアプリのアーキテクチャを整理する際にも役に立ちそうな文章です。 クラシルのAndroidチームは去年の2月にAndroidアプリをリアーキテクチャしたのですが、そのアーキテクチャがアプリアーキテクチャガイドと似通った個所が多く、クラシルのアプリアーキテクチャを説明するのにもちょうど良さそうな文章だと思いました。 ですので、今回は新しいアプリアーキテクチャガイドとほとんど同じ構成で、クラシルのアプリアーキテクチャについて解説してみよう
こちらは、「dely Advent Calendar 2021」21日目の記事です。 昨日は、PdM櫻本さんの「とりあえずやってみる。精神について」という記事でした。 何か新しいことにチャレンジしてみたいと思っている方は、ぜひ読んでみてください! はじめに こんにちは、クラシル開発部SREチームの松嶋です。 今年の10月に「SREがプロダクトの価値を最大化するためにチームとして取り組んできたこと」と題して、私たちが足元課題解決型の体制から脱却し、チームとして効果的に機能するために取り組んできたことについて5つ紹介しました。 tech.dely.jp こちらの記事で紹介している取り組みは、クラシルというプロダクトの成長を加速させていくために私たちは何をすべきなのか議論し、必要なことを地道に取り組んできただけなので、「これをやれば上手くいく!」というような銀の弾丸になるアクションは特にありませ
SwiftUIをクラシルに導入した話 こんにちは。これはdely アドベントカレンダー10日目の記事となります。 今年も残りあと少しとなりました。クラシル開発部でiOSエンジニアをしている@yochidrosです。 前回はharry(@gappy50)さんのクラシルでのSnowflakeデータパイプラインのお話&活用Tips でした。 日頃redashを利用して分析をしている中でより便利になっていっているなと感じました!tipsも今後使っていこうと思います! 今日はSwiftUIをクラシルに導入した話を書いていきたいと思います。 背景 2019年に発表されたSwiftUIですが、iOSのバージョンが13.0以降でないと利用できない等制約があったためなかなかクラシルも導入できずにいました。 しかし、今年のクラシル自体のiOSのサポートバージョンを13.2に引き上げたことによってSwiftUI
はじめに はじめまして。 クラシル開発部でデータエンジニアをしておりますharry(@gappy50)です。 この記事は dely Advent Calendar 2021 および Snowflake Advent Calendar 2021の9日目の記事です。 昨日はうっくんさんからのNotionでJiraを作ろう!というとても興味津々話でした!! やっぱりNotionは色々できるのでいいですね◎ それと私のお話で恐縮ですが、昨日はSnowflakeのイベントSnowdayにてクラシルでのSnowflakeを活用したニアリアルタイム分析の事例についてお話をさせていただきました。 www.snowflake.com 今回はSnowdayでお話した内容のデータエンジニア寄りな詳細と、どのようにSnowflake*1を活用しているかを紹介させていただきたいと思います! 最近のクラシルデータ基盤
自己紹介 こんにちは、松岡です。 私はコマース事業部でインフラ兼バックエンドエンジニアをやっています。 器用貧乏に幅広くいろいろなことができることを売りにしてきましたが、本格派の方々が続々と加入しているため居場所がなくなりつつあります笑。 この記事はdelyアドベントカレンダー4日目の投稿です。 昨日は偉大なEMのtakaoさんの「delyで働くパパエンジニアの日常を紹介」でした。偉大なEMは偉大な父親でもありました。ぜひご覧ください。 tech.dely.jp 事業の紹介 最初に私が所属するコマース事業部を紹介させてください。 コマース事業部はクラシルデリバリーというサービスを運営しています。 「あらゆるスーパーマーケットで最短30分配送を実現するグロサリーデリバリーサービス」です。 詳細は次のプレスリリースをご覧ください。 prtimes.jp クラシルデリバリーは大きく分類すると生鮮
こんにちは。クラシル開発部でエンジニアリングマネージャをしている@takaoです。 この記事はdelyアドベントカレンダー3日目の投稿となっています。 昨日の2日目の記事はiOSエンジニア石田さんの「機械学習を使ってUIを補完するAppleの研究の紹介」という記事でした。 先日、社内のiOS勉強会でこの記事の内容をシェアしていただいたのですが、UI検出の手法がおもしろくて図なども分かりやすいのでアプリでの機械学習の活用に興味がある方はぜひご覧ください。 今回は1歳半の子育てをしながら働いている僕が、普段どのように仕事と家庭の両立をしているのかをご紹介したいと思います。 delyは比較的若い会社ですが、社員の平均年齢がちょうど30手前ということもあり、ここ1,2年でパパママ社員が非常に増えてきています。 それに伴って社内の環境などもどんどん整備されていっているので、社内制度なども合わせてご紹
TRILL開発部のiOSエンジニアの石田です。 今年もdelyではアドベントカレンダーを行っており、本記事はその2日目の記事となっています。 昨日の1日目の記事は奥原さん (@okutaku0507) の「プロダクトマネージャー3年目の教科書」という記事でした。delyのエースPdMである奥原さんによる大作となっていますので是非ご覧ください。 本記事では、機械学習を使ってUIを補完するAppleの研究について紹介します。 AppleはMachine Learning Researchで機械学習に関する様々な研究を発表しています。 その多くはコンピュータビジョンや音声・テキスト認識のような研究なのですが、機械学習xUIという研究も行っております。 本記事ではその中でも、アプリのスクリーンショット(画像)から機械学習を使ってUIコンポーネントを認識し、アクセシビリティ機能を補完するMaking
はじめに こんにちは。クラシルのAndroidアプリチームのテックリードのうめもりです。 皆さん、Gradleのモジュール機能は活用していますか?ソースコードの依存の方向をモジュール単位で強制出来ることでアーキテクチャーの制約を強制しやすかったり、並列ビルド・差分ビルドの局所化によるビルド高速化を期待できたり、大規模なAndroidアプリを作るにはとても役に立つ機能ですよね。 そんな役に立つ機能ですが、実際どうやって活用していけばいいか分からなくて導入に踏み切れない方や、導入してみたがいまいち恩恵が感じられない、そんな方もいらっしゃるのではないでしょうか。 ところで、Androidアプリを開発してきた皆さんなら一度は聞いたことがある言葉にClean Architectureというものがあると思います。 引用: クリーンアーキテクチャ(The Clean Architecture翻訳) |
こんにちは、プロダクト開発本部SREチームの松嶋です。 delyのSREチームは、2020年末頃まで最大2人体制の少数で奮闘してきましたが、嬉しいことにこの1年でメンバーが4人と倍増しました。 それまでは、リソース不足であったため足元にある緊急度の高い課題を解決していくことがSREのメインイシューで、長期的に取り組んでいく必要のある改善業務に着手することが困難な状態でした。 しかし、SREのプラクティスを何も実践できていなかった訳ではなく、想定外の複雑さを減らし、今以上に増やさないための文化づくりを意識的にしてきたので、サービスの信頼性が大きく下がることはほとんどなく、アラート対応に追われる状況に陥ることは防げていたと思います。 実際どのように想定外の複雑さを減らす取り組みをしていたのかは、現CTOの井上が「SRE NEXT 2020」にて発表しているので、興味のある方はこちらの記事をご覧
こんにちは delyサーバーサイドエンジニアの望月 (@0000_pg)です 4月になり、春の季節がやってきました 新入生・新社会人の皆さん、おめでとうございます🌸🌸 今回は技術的な内容ではなく、せっかく春なので 新社会人となり、エンジニアとして働く皆さんや これからエンジニアとして働いてみようかなと思っている皆さんに向けて ポエム的な内容でお送りします😉🌸 はじめに delyにおける新卒採用 エンジニアという仕事 "技術力" がなくてもできることはある "窓口" になる リポジトリのドメイン知識をつける とにかく模倣する コードを読む、動かす、つくる 他のメンバーを頼る 色んなことに首をつっこみ、チャンスは掴み取る やってみてげんなりすることを繰り返す おわりに はじめに 2020年の7月頃から サーバーサイドエンジニアにおける中途採用のカジュアル面談や 1次面接を担当してきまし
こんにちは、開発部の高橋です。 2020年10月頃から「クラシルサーバーサイドMTG」と呼ばれる、クラシルのサーバーサイド内で定期的に集まって話しあう取り組みを行っています。 今回はこの取り組みの経緯や取り組み方などについてご紹介します。 経緯 開催方法 話すトピックに関して やってみた所感 新たに生まれた課題 終わりに 経緯 クラシルサーバーサイドMTGを始めた経緯に話すには、まずクラシルの開発体制の変化について説明する必要があります。 開発体制変化の内容や意図などに関して知りたい方は、以下の記事を読んでもらえると分かりやすいかと思います。 blog.tsubotax.com クラシルの開発体制は左の集中型組織での開発から、2020年4月頃に右のSquad体制と呼ばれる職能横断的な開発体制に変化しました。 この体制変化により、元々は職能別に決定されていた座席や目標設定などがSquad別に
こんにちは、delyでクラシルiOSアプリ開発を担当している稲見 (@inamiy)です。 この記事は「dely #2 Advent Calendar 2020」の25日目の記事です。 dely #1 Advent Calendar 2020 dely #2 Advent Calendar 2020 昨日は、delyのSREチームのjoooee0000(高山)さんによる delyのSREチームがオンコールトレーニングを導入する3つの理由 の記事でした。 オンコール対応できるエンジニア、強くてカッコいい・・・ 私の方からは、メリークリスマス🎄🎅🔔 にふさわしい Elm Architecture による unidirectional なプレゼントをお届けします🎁 (2020/12/26 EDIT: タイトルを「なぜ MVVM は Elm Architecture に勝てないのか」から「
こんにちは! AWSのカオスエンジニアリングの新サービスもリリースされ、オンコールトレーニングへの関心が高まっているのを感じています。delyのSREチームのjoooee0000(高山)と申します。 この記事は「dely #2 Advent Calendar 2020 - Adventar」の24日目の記事です。 昨日は新規事業開発をしている おっくー (@okutaku0507) さんによる 「KPI自動通知Botで始める 数字に執着するプロダクトマネジメント|奥原拓也 / クラシルPdM|note」でした。 KPIの必要性から具体的なBot化の知識まで具体的に解説されているのでぜひ参考にしてみてください! note.com adventar.org adventar.org はじめに 今回は、delyのSREチームがオンコールトレーニングを導入する3つの理由を紹介したいと思います。 d
こんにちは、delyコマース事業部サーバーサイドエンジニアの小川です。 最近クラシルにて、ネットスーパー機能のリリースができました! (以下 クラシルネットスーパー) 入社して1年くらいたちますが、とってもエキサイティングな毎日を過ごしています。 この記事は「dely #1 Advent Calendar 2020 - Adventar」の24日目の記事です。 前日は仁多見さんの記事でした!↓ 思った以上に大変だったクラシルでの Scoped Storage 対応 - クラシル開発ブログ はじめに みなさんはElasticsearchを利用して、開発中のサービスに検索機能を導入したことはありますでしょうか。 今や様々なサービスで利用されているかと思います。 クラシルネットスーパーでは、キーワード検索以外の部分でもElasticsearchを活用しています。 レシピに紐づく食材を取得したり
本記事は dely #1 Advent Calendar の 23 日目の記事です。 adventar.org dely #2もあるのでこちらも見てみてください! adventar.org こんにちは、Android エンジニアの tummy です。 昨日はうめもりさんの「Androidも宣言的UI(が当たり前になりそうな)時代に非宣言的UIライブラリでこの先生きのこるには」でした。 絶賛このアーキテクチャで実装中ですが、以前より diff が少なくなったのとどこに何を書けばいいのかが明確になってとても捗ってます。ただ、まだ悩みポイントもあるのでこれから潰していきたいと思ってます 😎 さて、タイトルにある通りクラシルでも先日 Scoped Storage 対応をしました。 (今回は Scoped Storage についての説明は省きます、ドキュメントをぜひ参照してください 💁♀️)
こんにちは。dely株式会社でAndroidチームのマネージャーをやっているうめもり(Twitter: @kr9ly)です。 この記事は「dely #1 Advent Calendar 2020」の22日目の記事です。 21日目の記事は、kazkobay さんによる「デザイナーからPdMになる時に役に立った本と方法まとめ」でした。エンジニアがPdMになるときにも役に立ちそうな本なので、暇を見つけて読んでみようと思いました。 note.com 「dely #2 Advent Calendar 2020」もありますので、是非そちらもご覧ください。 Jetpack Compose前夜 皆さん、Jetpack Compose使ってますか?直近ですと12/2に1.0.0-alpha08、12/16に1.0.0-alpha09がリリースされ、開発が大分活発なのがうかがえますね。正式版リリースは来年末か
こんにちは!SREチームの松嶋です。 こちらは「dely #2 Advent Calendar 2020」の20日目の記事です。 adventar.org delyのアドベントカレンダーは#1もあるので、こちらもぜひ。 adventar.org 昨日は、maseoさんの「Google Optimizeでテストをしてる話」という記事でした。A/BテストでGoogle Optimizeを導入するか検討しているフロントエンジニアの皆さんはぜひ読んでみてください! tech.trilltrill.jp はじめに 私は昨年の11月にdelyへ入社しましたが、もう既に1年が過ぎてしまいました。体感的にまだ半年しか経っていない気持ちですが、そんな時間が過ぎるスピードの速さもdelyならではかもしれないと感じる今日この頃です。 delyのSREチームは、2020年9月までの約3年間、最大2人体制でなんとか
こんにちは。 delyコマース事業部のJohn(@johnny__kei)です。 この記事は「dely #1 Advent Calendar 2020」の20日目の記事です。 adventar.org adventar.org 昨日はtakaoさん(takaoh717)の「エンジニアが始めるプロダクトマネジメント最初の一歩」という記事でした。 はじめに 今回は、iOS開発で試しに使っているTuistというツールを紹介したいと思います。 TuistはXcodeプロジェクトの生成、管理を楽にしてくれるコマンドラインツールです。 似たようなツールでXcodeGenがあります。 大きな特徴は、Project.swift というファイルでの中でプロジェクトの定義をSwiftで記述するところです。 ここがイケてるやんと思って使い始めました。 (↓サイトトップに記載されている例) import Proj
こんにちは、delyでクラシルのiOSエンジニア兼PdMをしているtakao(takaoh717)です。 この記事は「dely #1 Advent Calendar 2020」の19日目の記事です。 昨日はデザイナーredさんの「Material DesignでUIデザインをブーストしよう」という記事でした。 adventar.org adventar.org はじめに delyに入社して3年が経過し、僕は今iOSエンジニア兼PdMとしてプロダクトに関わっていますが、今の役割になるまでにこれまでいろいろな立ち回りをしてきました。 最近弊社で開催したPdMに関するイベントで「コードを書くことを主としているエンジニアがどうやってPdMとしての能力を磨くべきか」という質問をいただきましたが、イベント内では具体的な話をあまりできなかったので本記事で僕自身の事例を交えながら紹介したいと思います。 こ
こんにちは。delyでAndroidエンジニアをしているkenzoです。 この記事は「dely #1 Advent Calendar 2020」の17日目の記事です。 昨日はサーバサイドエンジニア高松さんの「バンディットアルゴリズムをライトに解説」という記事でした。 A/Bテストとバンディットアルゴリズムを用いた施行が進む様子を並べて見比べられるのが面白かったです。ご興味ある方はぜひこちらも御覧ください! adventar.org adventar.org 今回はFirebaseのRemote Configを用いて一定割合のユーザーに値を振り分ける(A/Bテストをする)ときの設定方法についてお話します。 delyではクラシルを使用してくれているユーザーにより良い料理体験を届けられるよう、日々の機能開発・改善やキャンペーン施策等に対して開発部・マーケティング部のメンバーがFirebase R
どうもC#erの@MeilCliです。仕事ではAndroidエンジニアしてますがC#erなのでアドベントカレンダーではC#について書きます 今回参加してるアドベントカレンダーはこちらです。16日目の記事になります adventar.org あと同様なカレンダーがもう1つあります adventar.org また、この記事の一部をクイズにしたものも投稿していますのでよろしければそちらもご覧ください 祝: C# 9.0リリース さて、つい先日.NET 5と共にC# 9.0がリリースされました。C# 9.0の新機能は多々あるのですがその中でパターンマッチングの強化の一貫でvalue is not nullのようにnot条件が追加されました。この新機能によってC# 8.0のようにnot null判定をするためにvalue != nullやvalue is T nonNullやvalue is {}を
こんにちは! dely開発部の高松です。 この記事は「dely #1 Advent Calendar 2020」の16日目の記事です。 昨日はクラシルのUIデザイナーをされているymdskoさんの「UIデザイナーとして働く私が就活生に戻ったら絶対やること5つ」でした。 是非こちらもご覧ください。 note.com 「dely #1 Advent Calendar 2020」 adventar.org 「dely #2 Advent Calendar 2020」もありますので、是非そちらもご覧ください。 adventar.org さて、いきなりですが質問です。 目の前にそれぞれ決められた一定の確率で報酬を得ることができるボタンが4つあります。 合計で1000回ボタンを押して、4つの内どれが一番当たる確率が高いボタンかを検証してみてください。 なお、1000回ボタンを押したことで得た報酬は全て
こんにちは! dely で iOS エンジニアをしている nancy です。 はじめに この記事は「dely #2 Advent Calendar 2020」の15日目の記事です。 adventar.org adventar.org 昨日はクラシルのフロントエンドを担当されている しらりん さんの「ウェブの未来を描く Project Fugu」という記事でした。 tech.dely.jp ウェブとネイティブアプリとの操作性のギャップを埋めるプロジェクト、 Project Fugu について書かれています! ウェブの開発をされている方だけでなく、ネイティブアプリの開発をされている方にもオススメの記事なので、興味のある方は是非ご覧ください! 本日は WWDC 2019 で発表された iOS の自動更新サブスクリプション機能の一つ、 「プロモーションオファー」について書きたいと思います。 はじめ
目次 目次 はじめに ウェブのこれからを追いかける Project Fugu とは 検討されているエコシステム User Idle Detection API macOS Touch Bar API その他 おわりに はじめに こんにちは、dely株式会社でエンジニアをしているしらりんです。4月に立ち上げられたリテール事業部という部署で、主にウェブフロントエンド・サーバーサイド領域の開発を担当しています。 先日初めてのぎっくり腰を経験し、それ以降日々腰を曲げるのに恐怖を感じています。 そんなことはさておき、この記事は「dely #2 Advent Calendar 2020」の14日目の記事です。 adventar.org adventar.org 昨日は開発部GM 井上さん(@gomesuit)の「技術だけではもう足りない?エンジニアとしての成長のために避けては通れない4つの領域とは!」
はじめに こんにちは! クラシルWebのフロントエンドを担当しているall-userです。 今回は、とあるプロジェクトをVue 2からVue 3に書き換えてみたので、その過程と所感についてまとめたいと思います。 この記事はdely #1 Advent Calendar 2020 14日目の記事です。 adventar.org adventar.org 昨日はfunzinさんのCarthageで生成したframeworkの管理でRomeを導入してみたでした。 元々使用していたcarthage_cacheをRomeに置き換える過程が分かりやすく解説されています。ぜひこちらも覗いてみてください🙌 さて、今回題材に選んだプロジェクトは小規模なVue 2で書かれたアプリケーションですが、そのスタック構成はかなりクラシルWebに近いものとなっており、今後クラシルWebへの導入を検討する上での良い足が
こんにちは! dely開発部GMの井上(@gomesuit)です。 この記事は「dely #2 Advent Calendar 2020」の13日目の記事です。 昨日はサーバサイドエンジニアのyamanoiさんの「Cloud Runで手軽にサーバーレス・SSR」という記事でした。 adventar.org adventar.org 目次 目次 はじめに プロダクト開発における技術選定の捉え方 プロダクト開発における意思決定って何 意思決定はどのように行われるか 意思決定において必要な情報とは プロダクト開発における情報のマネジメント テクノロジー領域の知識だけでは精度の高い技術選定はできない例 例1:マイクロサービス化 例2:プログラミング言語・フレームワークの採用 まとめ さいごに はじめに delyに来てマネジメントに関わるようになってから2年が経ちました。エンジニアの成長について色々
はじめまして、dely開発部のfunzinです。普段はクラシルのiOSアプリ開発を担当しています。 この記事は「dely #1 Advent Calendar 2020」の13日目の記事です。 adventar.org adventar.org 昨日はbababachiさんのコンテナサポートされたLambdaで湯婆婆実装してみたという記事でした。 Lambdaによる湯婆婆実装が丁寧に説明されているので、気になる方はぜひみてみてください! さっそく本題ですが、この記事ではCarthageで生成したframeworkの管理でRomeを導入したことについてまとめていきます。 Romeとは Romeは、Carthageで生成したframeworkを様々なストレージで管理することを可能にしてくれるツールです。保存先はローカル、AWSのS3などが指定可能です。 なぜ導入したか 元々クラシルでは、car
次のページ
このページを最初にブックマークしてみませんか?
『dely engineering blog』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く