Position: Principal Software Engineer
Company: Cypress Semiconductor, Lviv
Category: C++
Experience: 3y
English level: intermediate

✅Qualifications
— Demonstrated experience with embedded software design, development, debugging, documentation and testing
— 8+ years of experience in software engineering with the following:
— Proven working experience in embedded software engineering
— BS degree in Computer Science or Engineering
— Experience in hands-on development and troubleshooting on embedded targets
— Solid programming experience in C or C++ and assembly languages
— Proven experience in embedded systems design with preemptive, multitasking real-time operating systems
— Experience with Multi-threading and multi-processor platforms
— Familiarity with software configuration management tools, defect tracking tools, and peer review such as — GIT, SVN, JIRA and Gerrit
— Excellent knowledge of OS coding techniques, IP protocols, interfaces and hardware subsystems
— Experience in bare-metal development environments and platform bring up
— Experience with pre-silicon SW development and validation
— Knowledge of IO interfaces and device drivers such as I2C,SDIO, UART, Flash drivers, USB etc.
— Working experience with ARM and other MCU architectures
— Strong Debug skills (JTAG, GDB etc.)

English B2 and higher

?Пропонуємо: творче зростання, дружню та відповідальну команду, можливість спробувати себе у ролі наставника, 20 днів оплачуваної відпустки та гнучкий графік, конкурентну заробітню плату, медичне страхування, навчальну допомогу, безкоштовні заннятя з англійської мови, їдальню в офісі, 24\7 спортзал, подорожі, паркінг.

✅Key Responsibilities:
— Design, develop and support BootROM Software for various Cypress IOT platforms/MCUs
— Designing, implementing, testing, integrating and debugging real-time embedded system software
— Analyzing and enhancing system efficiency, power consumption, stability and functionality
— Manage ongoing software requirements definition and prioritization to keep pace with customer design requirements
— Participate in design/code reviews
— Provide support to internal and external customers
— Interface with silicon and HW design and development — Work closely with design engineers and marketing to develop new features that integrate with the RTOS environment
— Work with and/or access third party/open source tools and software
— Manage project plans, development backlogs, timelines, milestones, and priorities
— Mentor junior engineers
— Generate documentation including diagrams, charts, and other tools to ensure the delivery and maintainability of a quality product