Hey there and welcome to your new opportunity with us.
Being a Software Engineer is an exciting task, since you are the superhero, we need. You know what setup of our solutions will satisfy their needs; therefore, these here are your most important tasks:
Technical Stack:
- Backend: Java 17, Spring Boot, message queue, Websocket,
- Frontend: Vue.js
- System Platform: Embedded Linux
Responsibilities:
1. Backend Development:
- Database Design: Design and implement databases using MySQL and H2 for storing user data, charging tasks, historical records, and other business logic-related information.
- Message Queue: Implement data exchange using ActiveMQ for efficient communication.
- Business Logic: Implement business logic according to European standards for charging protocols.
- API Development: Develop secure RESTful APIs for frontend consumption, handling data requests and sending commands to devices.
2. Frontend Development:
- UI Design: Create intuitive and responsive user interfaces using Vue.js, enabling users to easily manage charging tasks and view related data.
- Interaction Optimization: Design and implement smooth user interactions, including real-time status updates and data visualizations such as charts.
- Business Logic Customization: Develop frontend applications to support specific business logic changes, ensuring the frontend UI can adapt flexibly to changes in backend logic and provide necessary user interactions and data displays.
3. System Integration & Testing:
- Hardware-Software Integration: Integrate embedded hardware with software in an Embedded Linux environment, ensuring compatibility and performance across all components.
- Comprehensive Testing: Conduct unit tests, integration tests, and load tests to ensure software stability and reliability.
4. Design & Development:
- Develop and maintain Java-based applications for embedded systems, with a focus on web interfaces and OCPP (Open Charge Point Protocol) server/client implementation.
- Implement server-side logic for managing EV charging stations compliant with OCPP versions 1.6 and 2.0.1.
- Create responsive and user-friendly web interfaces for device management, monitoring, and control.
5. Integration & Testing:
- Integrate embedded hardware with software components, ensuring seamless communication between systems and software.
- Troubleshoot and resolve issues related to embedded system communication and web interface functionality.
6. Collaboration & Documentation:
- Work closely with embedded software engineers, front-end developers, and product managers to deliver complete, end-to-end solutions.
- Document software designs, APIs, and technical processes to ensure maintainability and knowledge sharing.
Stay updated with industry trends, particularly regarding EV charging standards and embedded systems development.