Epicareer Might not Working Properly
Learn More

Software Application Engineer

RM 3,000 - RM 3,499 / Per Mon

Apply on

Availability Status

This job is expected to be in high demand and may close soon. We’ll remove this job ad once it's closed.


Original
Simplified
Job Overview: We are seeking a talented and driven Software Application Engineer/Developer to join our dynamic engineering team. In this role, you will be responsible for designing, developing, and maintaining software applications that interface with embedded systems, microcontroller-based hardware, and etc. Your work will bridge the gap between hardware and user-facing software, ensuring seamless integration and high performance across our product line. Key Responsibilities: Design and Development: Develop, test, and maintain software applications that interact with embedded systems and hardware components. Collaborate with cross-functional teams, including embedded software engineers, hardware engineers, and product management, to define software requirements and architecture. Utilizing application interfaces (APIs) that facilitate communication between software applications and embedded systems. Create a user-friendly interface for the software application Integration: Ensure smooth integration of software applications with various engineering platforms, ensuring compatibility and performance optimization. Work on middleware solutions to manage communication between embedded systems and higher-level software applications. Testing and Debugging: Perform rigorous testing of software applications to ensure reliability, security, and performance. Debug and resolve software issues related to application performance, user interface, and hardware interaction. Documentation and Support: Develop and maintain comprehensive documentation for software applications, including design specifications, user manuals, and troubleshooting guides. Provide technical support and guidance to internal teams and end-users, addressing software-related inquiries and issues. Continuous Improvement: Stay up-to-date with industry trends, tools, and technologies to continually enhance software development processes and product quality. Contribute to code reviews, sharing best practices and fostering a culture of continuous learning within the team. Qualifications: Education: Bachelor’s degree in Computer Engineering, Software Engineering, Electrical Engineering, Electronic Engineering or software related field. Experience: Preferably 1+ years of experience in software application development, particularly in environments involving hardware or embedded systems. Experience with programming languages such as C/C++/C#, Python, Java, or similar. (Proficiency in C# and Python is highly preferred.) Added value for experience in Linux System Programming & Assembly Language. Skills: Strong understanding of software architecture, particularly in systems that interact with hardware. Experience with communication protocols (e.g., UART, SPI, I2C, CAN) and real-time operating systems (RTOS) is a plus. Proficiency in debugging and optimizing software for performance and reliability. Strong problem-solving skills and ability to work collaboratively in a fast-paced environment. Soft Skills: Excellent communication skills, both written and verbal. Ability to work independently as well as part of a team. Strong attention to detail and a commitment to delivering high-quality software. Preferred Qualifications: Experience with IoT systems or industrial automation. Familiarity with version control systems (e.g., Git) and continuous integration/continuous deployment (CI/CD) pipelines. Knowledge of user interface design and development.