Samsung
Location: San Jose, CA
Samsung has a new group called the “System Software Group,” formed in the San Jose area. It was formed in order to develop/enable cool new system solutions based on Samsung’s flash and NVM technologies.
Software Architect - System Software Group
Samsung Semiconductor, Inc. is a world leader in Memory, System LSI and Display technologies. We are currently looking for a Software Architect to join our rapidly growing Flash Solutions Lab in San Jose, CA. The Software Architect will be a key technical contributor in the Flash Solutions Lab. He or she will play a critical role in architecting and designing solutions optimized for Non-volatile memory (such as flash).
Responsibilities
A Software Architect will be respoinsbile for one or more of the following:
- Lead the design of user/system interfaces for enterprise flash storage (SSDs) for applications including but not limited to Caching, Web services, Databases, Virtualization, Cloud, Big data.
- Design system software including but not limited to filesystem, device driver.
- Measure, analyze and optimize system performance for the flash storage.
- Collaborate with external customers/partners and identify their needs and requirements for flash.
- Act as a technical advisor and resource to other engineers and cross functional departments across Business Units.
- Guide and mentor junior engineers.
- Propose and develop forward looking platforms, solutions and features for enterprise flash storage products.
- Understand, participate and contribute to storage specifications such as SCSI, SAS, SATA, PCIe, NVMe, SCSIe, NVMP.
Desired Skills & Experience
- B.S., M.S., or PhD in Computer Science, Electrical Engineering or related field.
- Proficiency in SAS, SATA, SCSI.
- 7+ years in Systems software with sound understanding of storage subsystems including I/O and management path. Programming in C/C++ on Linux/Windows/VMware.
- Qualified candidates should have expertise in one or more of the following:
- High-speed storage interfaces SAS/SATA/PCIe/SCSI/NVMe.
- Experience with NAND Flash/FTL.
- Experience in operating systems, linux kernel programming, file systems, storage drivers, databases, virtual memory subsystems.
- Desired: Knowledge about various I/O tools. Ability to setup system for performance benchmarking.
- Desired: Experience in scripting languages such as Python, Perl etc.
- Familiarity and experience with modern agile software development methodologies and practices is preferred.
Software Engineer – Technical Lead
(System Software Group)
Samsung Semiconductor, Inc. is a world leader in Memory, System LSI and Display technologies. We are currently looking for a Software Engineer/Technical Lead/Architect to join our rapidly growing Flash Solutions Lab in San Jose, California. The software engineer will design and implement cutting edge software for next generation storage platforms involving flash and next generations of persistent memory. The software engineer will be part of a team solving hard problems in the areas of extreme performance and scalability, caching, operating systems and fault tolerance. The software engineer will have an opportunity to work directly with our large customers.
Responsibilities
- Work as part of a team to understand enterprise customer requirements for flash and other non-volatile memory.
- Propose and develop forward looking platforms, solutions and features for enterprise flash storage products.
- Design and implement these features in C/C++ on Linux/Windows and demonstrate value proposition.
- Daily work involves design, prototype/development of new features and performance optimizations.
- For some projects, collaborate with external customers and partners, as well as internal engineering and product planning teams is also expected
Qualifications
- Required: 5+ years of software development experience in C/C++.
- Required: Bachelor's or higher degree in Computer Science or related field
- Desired: Experience in operating systems, file systems, databases, Storage and I/O, performance analysis, Flash/SSDs, Virtual Memory
- Desired: Ability to think vertically in the storage stack, from NAND flash to application, to diagnose and improve performance problems at all levels
- Desired: Knowledge about various I/O tools and their use to generate performance matrix.
- Desired: Knowledge of storage protocols such as SAS, SATA, SCSI, NVMe
How To Apply
If you are interested, contact: Ashish Batwara [a.batwara@samsung.com].