Software Engineer (AL-FNC250102 001/01)
Salary undisclosed
Apply on
Original
Simplified
Description
Responsibilities:
You will be tasked with designing and developing devices for an integrated e-payment Fare Collection System with one of our key clients. You will participate in the entire software development lifecycle, from requirement definition to design, development, and testing. Key activities include:
- Gathering requirements.
- Designing and developing software applications for embedded devices.
- Implementing and optimizing communication protocols (e.g., TCP/IP, HTTPS, FTPS/SFTP, MQTT-S) to ensure secure and reliable connections between embedded devices and on-premises/cloud platforms.
- Conducting thorough testing, debugging, and troubleshooting of embedded devices to resolve issues related to functionality, connectivity, performance, and reliability.
- Preparing and submitting various deliverables throughout the Software Development Lifecycle (SDLC), such as Business Rules, Software Requirement Specifications, Software Architecture Documents, Design Specifications, Interface Specifications, Source Specifications, Operation and Maintenance Manuals, Training Manuals, and other necessary documents.
- Providing day-to-day application support.
- Liaising with users regarding requirements, testing, and production issues.
Requirements
- At least 5 years of experience in object-oriented software development.
- A degree in Electrical/Electronics/Computer Engineering, Computer Science, or a related field.
- Experience in developing software through at least one complete Software Development Lifecycle.
- Proficiency in writing Requirements Specifications, Use Cases, Design Documentation, and designing software using object-oriented design and UML modeling.
- Strong knowledge and experience in C++ on embedded platforms (e.g., QNX, VxWorks, Embedded Linux).
- Experience in multi-threading, socket programming, and serial/USB communication.
- Familiarity with Docker container development and AWS Greengrass is advantageous.
- Experience with Scrum AGILE methodology is a plus.
- Ability to develop and integrate embedded devices with cloud platforms.
- Strong analytical and problem-solving skills.
- Good written and verbal communication skills.
- Self-motivated, independent, and a good team player.
Similar Jobs