Home
Jobs

Interesting Job Opportunity: Software Architect - Embedded System

10 years

0 Lacs

Posted:16 hours ago| Platform: Linkedin logo

Apply

Work Mode

On-site

Job Type

Full Time

Job Description

Job Description Design and develop software architectures for libraries tailored to meet the specific requirements of embedded systems, considering factors such as performance, memory constraints, and real-time processing. Collaborate with cross-functional teams, including software engineers, hardware engineers, and product managers, to understand system specifications and requirements for the embedded systems. Define the overall structure, components, and interfaces of the software library to ensure modularity, reusability, and maintainability. Evaluate and select appropriate programming languages, frameworks, and technologies that align with the constraints and capabilities of the embedded systems. Implement best practices for code optimization, data management, and resource utilization to enhance the overall efficiency and performance of the software library. Conduct thorough testing and validation of the software library to ensure its compatibility, reliability, and functionality across different embedded systems. Provide technical guidance and support to the development team during the implementation and integration of the software library into the embedded systems. Document the software architecture, design decisions, and technical specifications to facilitate communication and knowledge sharing within the organization. Stay updated with the latest advancements in embedded systems, software development practices, and industry standards to incorporate relevant technologies and methodologies into the software : Bachelor's or Master's degree in Computer Science, Computer Engineering, or a related technical field and 10-15 years of relevance experience including experience of handling a team of 5-10 peoples. Proven experience in designing and implementing software architectures for embedded systems, preferably with a focus on developing libraries or frameworks. In-depth knowledge of embedded software development, including programming languages like C, C++, and assembly language, as well as familiarity with embedded operating systems. Experience with various software development tools, version control systems, and build automation tools commonly used in the development of embedded systems. Familiarity with hardware components and interfaces commonly used in embedded systems, such as microcontrollers, sensors, and communication protocols. Strong analytical and problem-solving skills to address complex technical challenges and optimize software performance for resource-constrained environments. Excellent communication and collaboration skills to effectively work with cross-functional teams and stakeholders. Ability to prioritize tasks, meet deadlines, and manage multiple projects simultaneously in a dynamic and fast-paced Skill Programming Languages Proficiency in C and C++ : These languages are commonly used in embedded systems programming due to their low-level capabilities and efficiency. Assembly Language : Understanding assembly language is crucial for optimizing code and interfacing with hardware at a low level. Real-Time Operating Systems (RTOS) Knowledge of RTOS concepts and experience with popular RTOS platforms such as FreeRTOS, VxWorks, or Micrium. Embedded Systems Architecture Understanding of microcontroller and microprocessor architectures. Familiarity with various embedded system architectures (ARM, MIPS, AVR, etc.). Communication Protocols Expertise in communication protocols like UART, SPI, I2C, CAN, Ethernet, and USB. Experience with wireless protocols such as Bluetooth, Zigbee, and Wi-Fi. Device Drivers Ability to develop and optimize device drivers for peripherals such as sensors, actuators, and communication interfaces. Hardware Interaction Proficient in interfacing software with hardware components. Knowledge of memory mapped I/O and peripheral register access. Software Development Tools Familiarity with integrated development environments (IDEs) such as Keil, IAR, Eclipse, or MPLAB. Experience with debugging tools and techniques, such as JTAG debugging. Modelling And Simulation Experience with modelling languages and tools like UML (Unified Modelling Language) for system design. Simulation tools for testing and validating embedded systems before hardware is available. Security Knowledge Understanding of security considerations in embedded systems, including secure boot, encryption, and secure communication protocols. (ref:hirist.tech) Show more Show less

Mock Interview

Practice Video Interview with JobPe AI

Start Software Interview Now

My Connections SkyBridge HR Solutions

Download Chrome Extension (See your connection in the SkyBridge HR Solutions )

chrome image
Download Now

RecommendedJobs for You