Responsibilities: Design, develop, and integrate embedded software within a multinational engineering team Define software architecture and concepts for persistent memory management, including storage formats, wear levelling, data consistency, data integrity, security, rollback, and robustness strategies Collaborate with system architects to translate system-level requirements into memory solutions Develop and maintain low-level drivers for eMMC and NAND flash memory Implement bad block management, data integrity handling, and longevity optimisation strategies Drive memory bandwidth benchmarking and performance optimisation initiatives Support root cause analysis for field issues and persistent memory-related failures Work closely with hardware teams on memory architecture and integration strategies Contribute to design reviews, documentation, and code quality processes Interface with hardware, validati on, and software teams to ensure system reliability and robustness Requirements: Ba...