Dario Codipietro

Samsung Food: Planner Improvements

As Lead Product Designer at Samsung Food, I ran the planner improvements workstream alongside the casual planner and the Tailored Plan, taking five briefs from hypothesis through triad and design review to a ready-for-dev handover, to make the planner and its recommendations fit the way users actually eat and plan.

Role
Lead Product Designer
Year
2024
Team
PO, dev, second designer
Shape
Five briefs, fourteen iterations, five handovers
The dev-ready combo cards across search, the day view, the planner and the tailored plan, in light and dark mode, with the single, double and triple card set beside them.

Outcome

I brought in the method these briefs ran on to replace a fragmented workflow, and every designer on the team adopted it, down to the iteration format in Figma and the review format. The combo card, a new card for a recipe with its sides or products, became the one card component for every combination, and other squads built with it from the design system. Three briefs were released in the period: the quick wins on the calendar view, the combo cards in recommendations, on the tailored plan and in Explore, and notes on native. Personalised servings and leftovers were handed over, built into the Tailored Plan that followed and released after I left. In the Tailored Plan, leftovers are planned from how many times users cook each week, and personalised servings were designed to widen the recipe pool the plan draws from.

Context

The planner had been built around detailed planners, and its calendar view was hard to use on a phone. Recommendations suggested single recipes, so a recommended meal came without its sides or products. Notes on a day existed on the web app only. The tailored plan picked recipes at their defined servings, so many missed a user’s nutrition targets. There was no way to plan the leftovers of a meal already cooked.

Alongside the casual planner and the Tailored Plan, we took these on as a run of smaller briefs on the same surface, grouped in Figma as Meal Plan Improvements. Their shared mission was that the planner and its recommendations should reflect the way users actually eat and plan. Each brief had its own file, hypothesis and handover, and each one fed into the two larger workstreams on either side of it.

Replacing a fragmented workflow with one review method

These briefs ran on the method I had brought in to replace a fragmented workflow, and I used it at every size. Each iteration was one page, opening with an overview block: the mission, the solution line from the roadmap, who is reviewing, what changed since the last iteration and what feedback is wanted. Questions to reviewers were pinned beside the screens they concerned. The PO wrote pushback on the board, where we could answer it. The ready-for-dev handover held only the release scope.

01Quick wins

Fitting more of the week on screen in the calendar view

On a phone the calendar view was hard to use, so the first brief was a usability pass on it, with three aims written at the top of the board: increase vertical real estate, use natural language where possible, and let users collapse the recommendation row. We took the header to one line, top and bottom padding to 16 and headings to H4, and removed the line dividers. Day labels became yesterday, today and tomorrow, and the week picker listed last week, this week and next week before it listed dates. The tailored row became collapsible and remembered whether the user had closed it. The aim was to show more of the week on screen and make it quicker to read. The changes were released as part of the calendar view update in v1.

Quick wins. The week view, the week picker and the day view, with each amend tagged on the screen it changes.

Open in Figma ↗ Get password →

02Recipe and product combos

Planning a recipe with its sides and products as one meal

Recommendations could not suggest a recipe together with its sides or products. The roadmap solution was recipe and product combos for lunch and dinner, with more and new food combinations in recommendations, so that a planned meal could be a recipe with its sides or products and recommendations would reflect the way users actually eat. The cards had to carry two, three or four items where the existing cards carried one or two. In iteration 1 we put three directions on the board, stacked, tiled and single card, with the existing two-product card as the baseline. A note on the board said the database images had white backgrounds, which ruled out anything that relied on cut-outs.

After design review and a review with the PO, we settled on the single card in iteration 2, in three variants and both themes. In the same iteration we opened a second question, whether a combo should open in a quick view bottomsheet, where users could inspect and edit it without leaving the planner, or on a dedicated combo page. In iteration 3 the PO wrote on the board that two radically different views for different types of meals would add mental complexity, and asked us to consider a unified system for combos and recipes. They also asked us to think about how a saved combo is opened from the recipe box before building a quick view that then needs a page as well. I argued on the board for quick view, which keeps users on task and had research supporting it in visually driven products.

Iteration 1, three directions. Existing, new and future-proofing combinations against stacked, tiled and single card layouts. The four-item rows are marked future proofing and were not in scope.

Open in Figma ↗ Get password →

Iteration 3, the PO on the board. Option 1, quick view, and option 2, a page, side by side, with three notes in which the PO argues for one interaction model for combos and recipes.

Open in Figma ↗ Get password →

Iteration 4, the question put to review. Both journeys are on the board with the arguments beside them, that quick view keeps users on task and that with a page every meal opens the same way.

Open in Figma ↗ Get password →

Replacing single and double cards with one combo component

Two questions were still open, which variant of the single card to build and whether a combo opened in a quick view or on its own page, and the PO and I held opposite positions on the second. In iteration 4 we took both to the wider design review as two of four asks. The other two were whether combo actions should be contextual and change between recommended and planned, and whether users should be able to swap a single item inside a combo. Design and product had mostly settled on variant 1, and the review confirmed it. We kept the quick view for the planner context and put it to an A/B test against the existing overflow menu with a simplified add-to-shopping journey, so we could decide between the two positions on test data.

We made one card component for every combination. Single, double and triple cards share the component the new combo cards use, so we deprecated the old single and double cards in the same handover.

We held the release scope to the recommendation row, the tailored plan and Explore, and the add journeys from each. The quick view went to the A/B test. Swap-in-combo and contextual actions were parked. Swapping inside a combo came back in Swap Meals, where engineering cut combo swaps and released a single-recipe swap in place.

Iteration 4, design review. Four questions in one iteration, each with its journeys. Swap-in-combo is the bottom row.

Open in Figma ↗ Get password →

A/B test of the quick view. The existing menu, simplified, against the bottomsheet. The test was set up at handover, and the result is not on the board.

Open in Figma ↗ Get password →

03Notes

Bringing notes to native, at parity with web

Users could add one note per day to the planner on the web app, and the native apps had no way to add one. We brought notes to native at parity with web, so users could add a note to a day whichever app they planned in. In iteration 2 we covered the shared plan case (a flatmate’s note visible on a shared plan), adding a note from the FAB with the first available day preselected, and switching to the week the note lands in. We also covered the conflict when a day already has a note, where a modal offers to edit the existing one and keeps the typed text across a date change. After a tech call, we produced every journey in iteration 3, rebuilt on the One UI components, in light and dark. It was ready for dev the same week. The web app’s own announcement states the limit we matched on native, one note per day of up to 80 characters.

Notes, iteration 3. Add from the FAB, add to a day with a note, delete, and the unsaved prompt, in both themes. The overview block records that it followed the tech call.

Open in Figma ↗ Get password →

04Personalised servings

Widening the recipe pool with personalised servings

We started the brief from the premise that the tailored plan’s recipe pool was limited, because it picked recipes at their defined servings and many missed a user’s nutrition targets by that fixed amount. The hypothesis was that adapting servings fractionally to the user’s targets would widen the pool without changing the recipes, so the plan could recommend more recipes that fit. In iteration 1 we asked reviewers three questions, does this make sense, which variant works best and do you see personalised servings anywhere else. We put the recommendation on the recipe page as “we recommend 0.75 servings for you”, with a set-recommended action. In iteration 3 we narrowed it to two variants, personalised servings as the default with original as a toggle, or original as the default with personalised offered. We designed entry from anywhere and from the planner. We handed it over, and it was released after I left.

Servings, iteration 1. The hypothesis and the why at the top, the servings control in three variants, and the three questions to reviewers.

Open in Figma ↗ Get password →

Servings, iteration 3. Variant A recommends and sets, and variant B toggles personalised against original. Both entries are drawn, from anywhere and from a planned meal.

Open in Figma ↗ Get password →

05Leftovers

Planning leftovers from meals marked made

When a meal made more portions than were eaten, users had no way to plan the rest. We introduced leftovers so a meal made once could be planned again, with made it as the entry point. When users mark a meal made, the planner asks how many leftover portions they got and where to plan them. In iteration 1 we put two models side by side, a leftovers collection and a leftovers list. The collection was created when a plan was generated, populated automatically and reachable from the collections screens. The list was available only from the planner. The question on the board was whether there was any value in not using a collection. In iteration 2 we designed leftovers as a saved collection, opening a plan screen from the collection. We handed it over, and it was released after I left. In the Tailored Plan, users who set fewer cooks per week get more leftovers planned. We later designed the made it step to schedule those portions for the next day’s lunch, with a manual override.

Leftovers, iteration 1. Collection on the left and list on the right, each with its setup, add and made it journeys, and the question about collections in the yellow note.

Open in Figma ↗ Get password →

Made it. The entry point every leftover model shares, from marking a meal made to entering the leftover portions and planning them.

Open in Figma ↗ Get password →

What was parked, and what was handed over

Parked

  • Four-item combo cards
  • Dedicated combo page
  • Contextual combo actions
  • Swap an item inside a combo
  • More than one note per day
  • Leftovers list outside collections

Released or handed over

  • Calendar view quick wins, in v1
  • Single, double and triple combo cards, one component
  • Combo cards in recommendations, the tailored plan and Explore
  • Quick view bottomsheet, to A/B
  • Notes on native, one per day, parity with web
  • Personalised servings, two variants
  • Leftovers as a saved collection

We parked what fell outside each brief’s release scope, and the models we did not take forward. Quick wins, combo cards and notes were released while I was there. Servings and leftovers were handed over, built into the Tailored Plan and released after I left.

None of these was a large project on its own, so we ran them as one workstream. Because every brief used the same iteration structure, review questions and handover format, we could pick up, review and hand over a brief inside a sprint. We reused their components and decisions in the two larger projects on either side.

Sources

Get the password

Enter your work email to get the password.

Contact

Get in touch

Product design lead across research, design systems and handover, with coding agents in the loop. Contract, outside IR35, or a permanent lead role.

Available
Now
Location
London, remote or hybrid, UK and EU
Right to work
UK settled status, EU citizen
  • RolesLead Product Designer, Principal Product Designer, Design Engineer
  • Experience10+ years
  • ScopeResearch, design systems, prototyping, handover, QA with agents
  • LanguagesEnglish, Italian, Spanish
  • Email[email protected]
  • LinkedInlinkedin.com/in/dariocodipietro

Professional profile

Copy into your coding agent

Skills

  • Product design, end to end
  • UX and interaction design
  • Visual design and motion
  • Prototyping in Figma and code
  • Design systems at scale
  • User research and testing
  • A/B testing and analytics
  • Strategy and discovery
  • AI product design
  • Design to code, with agents
  • Accessibility, WCAG 2.2 AA
  • Leadership and mentoring

Platforms

iOS, Android, responsive web, smart TV and connected devices

Sectors

  • AI products
  • B2B SaaS
  • Consumer apps
  • Streaming, media and sport
  • Health, wellness and food
  • Legal tech
  • Telecoms and utilities

Tools

  • Figma
  • FigJam
  • Figma Make
  • Claude Design
  • Framer
  • Axure RP
  • Storybook
  • Claude Code
  • Cursor
  • Codex
  • MCP
  • GitHub
  • Linear
  • Jira
  • Confluence
  • Notion
  • Miro
  • Prolific
  • Lyssna
  • Maze
  • PostHog
  • Amplitude

Send a message

Tell me about the role and when it starts, and I will reply by email.