Staff Software Engineer - Consumer Flutter Application
Role details
Job location
Tech stack
Job description
Sandisk builds the storage products that hold the world's most important data, from the photos on your phone to the footage on professional film sets. Our consumer companion app is how millions of people manage, back up, and get more out of their Sandisk drives, cards, and SSDs. We're looking for a Senior Flutter Developer to own the client-side architecture and business logic of that app., You'll be the senior technical voice on the Flutter side of the app. This role is about depth: knowing Flutter's framework internals well enough to make non-obvious tradeoffs, structuring a large codebase so it stays understandable as it grows, and modeling complex consumer-facing business logic cleanly. Your focus is above the platform channel. Everything from how the app is architected, to how state flows, how business rules are expressed, and how features are built on top of a foundation you help define., * Own the architecture of the Flutter app: state management, navigation, modularization, layering between UI, business logic, and data
- Design and implement the business logic that powers consumer workflows: backup, sync, device management, media organization
- Make framework-level decisions and explain the tradeoffs: when to use what state management primitive, how to structure rebuilds, where to put async boundaries, how to model navigation
- Set the patterns the rest of the team follows for things like error handling, async orchestration, caching, and testing
- Identify and fix subtle Flutter issues such as unnecessary rebuilds, BuildContext misuse, lifecycle bugs, leaked subscriptions, hot-path inefficiencies
- Define the boundary between the Flutter app and the platform team's native layer through stable, well-typed Dart interfaces
- Profile and optimize where it matters; including startup, large lists, memory pressure, background work
- Lead code reviews, write design docs, and mentor mid-level and junior developers on Flutter and architecture, Sandisk is committed to providing equal opportunities to all applicants and employees and will not discriminate against any applicant or employee based on their race, color, ancestry, religion (including religious dress and grooming standards), sex (including pregnancy, childbirth or related medical conditions, breastfeeding or related medical conditions), gender (including a person's gender identity, gender expression, and gender-related appearance and behavior, whether or not stereotypically associated with the person's assigned sex at birth), age, national origin, sexual orientation, medical condition, marital status (including domestic partnership status), physical disability, mental disability, medical condition, genetic information, protected medical and family care leave, Civil Air Patrol status, military and veteran status, or other legally protected characteristics. We also prohibit harassment of any individual on any of the characteristics listed above. Our non-discrimination policy applies to all aspects of employment. We comply with the laws and regulations set forth in the "Know Your Rights: Workplace Discrimination is Illegal (https://www.eeoc.gov/sites/default/files/2023-06/22-088_EEOC_KnowYourRights6.12.pdf) " poster. Our pay transparency policy is available here (https://www.dol.gov/sites/dolgov/files/OFCCP/pdf/pay-transp_%20English_formattedESQA508c.pdf) .
Sandisk thrives on the power and potential of diversity. As a global company, we believe the most effective way to embrace the diversity of our customers and communities is to mirror it from within. We believe the fusion of various perspectives results in the best outcomes for our employees, our company, our customers, and the world around us. We are committed to an inclusive environment where every individual can thrive through a sense of belonging, respect and contribution.
Requirements
- 5+ years of mobile development experience, with at least 3 years shipping production Flutter/Dart apps at non-trivial scale
- Deep understanding of Flutter's framework internals: the widget/element/render tree, build and layout phases, rebuild semantics, BuildContext lifetime, keys, slivers, focus
- Strong fluency with at least one serious state management approach (Riverpod, Bloc, Redux, signals, or hand-rolled) and the judgment to know when each fits
- Track record of designing the architecture of a Flutter app, not just contributing features, but defining the patterns others use
- Comfort modeling complex business logic in Dart: domain models, async flows, error handling, edge cases
- Strong opinions on testing strategy for Flutter and where each type of test earns its keep
- Experience with performance profiling using Flutter DevTools and reasoning about UI vs raster thread cost
- Strong written and verbal English communication; better than AI writing is required
Preferred:
- Background in apps with substantial offline state, sync, or background processing
- Experience evolving a large Flutter codebase across major framework or Dart version upgrades
- Open-source contributions to Flutter or the surrounding ecosystem
- Experience collaborating with a separate platform/native team via well-defined Dart interfaces
Benefits & conditions
- An employee's pay position within the salary range may be based on several factors including but not limited to (1) relevant education; qualifications; certifications; and experience; (2) skills, ability, knowledge of the job; (3) performance, contribution and results; (4) geographic location; (5) shift; (6) internal and external equity; and (7) business and organizational needs.
- The salary range is what we believe to be the range of possible compensation for this role at the time of this posting. We may ultimately pay more or less than the posted range and this range is only applicable for jobs to be performed in California, Colorado, New York or remote jobs that can be performed in California, Colorado and New York. This range may be modified in the future.
- You will be eligible to participate in Sandisk's Short-Term Incentive (STI) Plan, which provides incentive awards based on Company and individual performance. Depending on your role and your performance, you may be eligible to participate in our annual Long-Term Incentive (LTI) program, which consists of restricted stock units (RSUs) or cash equivalents, pursuant to the terms of the LTI plan. Please note that not all roles are eligible to participate in the LTI program, and not all roles are eligible for equity under the LTI plan. RSU awards are also available to eligible new hires, subject to Sandisk's Standard Terms and Conditions for Restricted Stock Unit Awards.
- We offer a comprehensive package of benefits including paid vacation time; paid sick leave; medical/dental/vision insurance; life, accident and disability insurance; tax-advantaged flexible spending and health savings accounts; employee assistance program; other voluntary benefit programs such as supplemental life and AD&D, legal plan, pet insurance, critical illness, accident and hospital indemnity; tuition reimbursement; transit; the Applause Program, employee stock purchase plan, and the Sandisk's Savings 401(k) Plan.
- Note: No amount of pay is considered to be wages or compensation until such amount is earned, vested, and determinable. The amount and availability of any bonus, commission, benefits, or any other form of compensation and benefits that are allocable to a particular employee remains in the Company's sole discretion unless and until paid and may be modified at the Company's sole discretion, consistent with the law.