
Carrier hiring Embedded Java Software Engineer
Company: Carrier
Qualifications: BS in CS/EE
Experience Needed: Experience
Location: Hyderabad, Bangalore
Role & Responsibilities:
- Develop and maintain Java-based embedded firmware solutions using Agile methodologies.
- Write and maintain Java firmware that interacts with low-level hardware components (e.g., sensors, actuators, communication protocols).
- Participate in project planning by investigating solutions to embedded system challenges and providing accurate estimates.
- Collaborate with hardware and systems engineering teams to ensure smooth integration of firmware with embedded hardware components.
- Apply real-time operating system (RTOS) concepts, ensuring that the embedded firmware meets timing and performance requirements.
- Use test-driven development (TDD) methodologies to write unit and functional tests, ensuring firmware quality and reliability.
- Debug and resolve hardware/firmware interaction issues using diagnostic tools and methodologies.
Education Qualifications:
- BS in Computer Science, Software Engineering, Electrical Engineering, or related field required.
- Certifications or coursework related to embedded systems development is a plus.
Minimum Requirements:
- Strong Java programming skills with experience in embedded Java applications.
- Experience with embedded Linux or RTOS environments.
- Familiarity with low-level hardware interfaces and communication protocols (e.g., I2C, SPI, UART, GPIO, CAN).
- Experience in Test-Driven Development (TDD) and unit/functional testing for embedded systems.
- Experience in Java-based memory management, garbage collection tuning, and optimization in resource-constrained environments.
- Familiarity with real-time constraints and ensuring that firmware meets timing and performance requirements.
- Knowledge of hardware abstraction layers (HAL) and writing device drivers in Java.
- Experience with Gradle, Maven, or other build systems for embedded projects.
- Understanding of embedded system design, including power management and optimization for energy-efficient devices.
- Familiarity with debugging tools (e.g., JTAG, oscilloscopes) and Linux-based diagnostic tools (e.g., dmesg, strace).
- Experience working in an Agile/Scrum development process.