Senior Software Engineer
Alstom (Thailand) LTDAs a Senior Software Engineer, you will be responsible for developing and enhancing software to keep the train communications stable and resilient which support the train moving safely, comfortably, and efficiently while stopping at stations on time. The incumbent will have knowledge and understand software development lifecycle, software quality methods, coding standards, agile methods, modern tools, continuous integration, and safety standards.
Key Responsibilities:
- Develop a design from the subsystem requirements specification.
- Implement the software according to the peer reviewed and approved design.
- Create developer test cases and execute those on your software.
- Defend your software and test cases to your peers.
- Regularly suggest tools and product improvements while keeping current with the state of art.
- Exhibit excellent communication and interpersonal skills.
- Bachelor’s Degree in Computer Engineering, Software Engineer, Electrical Engineering, Electronic Engineering
- 2+ years of software development and implementation experience on embedded systems (Linux, any real time OS).
- 5+ years of software development experience
- Experience working with multiple operating systems, especially embedded systems including Linux.
- Strong Expertise on C++ programming
- Experienced on C/C#
- Experienced on Linux and Windows Operating Systems.
- Experienced using .NET profiling tools
- Experienced using SQL Database
- Experienced using Python
- Experienced using OOP, XML, VBScript/VBA, Sockets
- Experience programming GDI/GDI+ graphical applications.
- Familiarity with multi-threading concepts.
- Adheres to coding standard and best practices.
- Understanding of UDP and TCP/IP sockets. Preferably, the candidate should have experience implementing SNMP, Modbus TCP/IP, OPC.
- Working knowledge of Configuration Management tools
- Knowledge of Ethernet networks.
- Knowledge of RF communications.
- Experience working in the Transportation industry (specifically Rail).
- Experience in agile software development (e.g. Scrum)
- Fluent in English communication
- Dental insurance
- Life insurance
- Medical insurance
- Provident Fund
- Staff training and development
- Overtime
- 5-day work week
- Social security
- Health insurance
- Accident Insurance
- Flexible working hours
- Employee's uniform
- Performance/results-based bonus
- Annual bonus