We are seeking a motivated and detail-oriented intern to join our team as a Junior Frontend C++ Developer for our Automated Fare Collection (AFC) system project. In this role, you will gain hands-on experience in the design, development, and troubleshooting of frontend applications for gate systems and station computers in a large-scale transport environment. You will work closely with senior developers and technical leads to develop, maintain, and improve user interfaces and communication systems for these critical AFC components. This internship also includes opportunities to investigate and fix production issues, ensuring that the AFC systems run smoothly and reliably.
Key Responsibilities:
- Assist in developing and maintaining frontend applications for AFC gate systems and station computers using C++ and relevant technologies.
- Collaborate with the team to design user interfaces that optimize functionality for ticketing, fare processing, and gate management.
- Support integration between frontend components (gates, station computers) and backend systems, ensuring seamless operation within the AFC system.
- Contribute to the investigation and troubleshooting of production issues, analyzing root causes, and fixing bugs to ensure system stability and reliability.
- Participate in debugging and fixing defects in both development and production environments, ensuring minimal downtime and impact on users.
- Help implement system communication protocols (e.g., TCP/IP, MQTT) for data exchange between gates, ticketing systems, and clearing systems.
- Assist in creating and maintaining system documentation for frontend components, including architecture diagrams, interface specifications, and design documents.
- Ensure frontend components are optimized for performance, scalability, and reliability across AFC system platforms.
- Participate in code reviews and help ensure that development standards are followed in both new feature development and bug fixes.
- Maintain version control of code and documentation using platforms like Git or GitHub.
- Collaborate with cross-functional teams (backend, DevOps, QA) to resolve issues and enhance the AFC system's overall performance.
Requirements:
- Candidates with no experience is welcome to apply.
- Strong interest in C++ development and a passion for learning about embedded systems and frontend engineering for large-scale AFC systems.
- Basic knowledge of gate systems, station computers, and network protocols (e.g., TCP/IP, MQTT).
- Experience with debugging, troubleshooting, and bug fixing in production environments.
- Ability to investigate and resolve production issues in a timely manner, minimizing downtime and ensuring system reliability.
- Familiarity with UI/UX design principles, especially in the context of embedded or hardware-based systems.
- Experience with C++ programming, particularly in developing applications that require real-time communication and user interfaces.
- Exposure to system integration and experience working with REST APIs and other integration tools.
- Familiarity with version control systems like Git or GitHub.
- Strong attention to detail and organizational skills in documenting technical content (e.g., system diagrams, specifications).
- Excellent problem-solving skills and ability to apply debugging techniques effectively.
- Strong communication skills when working across technical teams (frontend, backend, QA).
- Ability to work independently and collaboratively in a fast-paced environment.