台灣總部 - Sr. System Engineer, Backend (Java Spring Programmer)
Posted Updated
Description
【Development and maintenance】
- Analyse, design, develop, as well as implement RESTful services and APIs.
- Be involved in the development life cycle and perform definition and feasibility analysis.
- Implement, integrate, and document a variety of software platforms through the REST API framework.
- Apply the latest software design techniques and contribute to the technical design of fresh solutions.
- Modify existing programs, prepare test data and functional specifications.
- Troubleshoot issues and solve problems, identify potential process improvement areas.
- Implement common APIs based on architecture guidelines and frameworks.
- Write object-oriented, clean, and maintainable code.
- Deliver quality results on time with minimal supervision.
【Core Technical Skills】
- Proficiency in Spring Framework: Spring Core, Spring MVC, Spring Data, Spring Security, Spring Boot.
- Spring Boot Features: Familiarity with key Spring Boot features such as auto-configuration, Spring Boot starters, and embedded servers (e.g., Tomcat) .
【Database Management & DevOps and Deployment Skills】
- Experience with Databases: comfortable with relational databases (e.g., MySQL, PostgreSQL) and ORMs like Hibernate. Knowledge of NoSQL databases (e.g., MongoDB) is often a plus.
- Spring Data: Proficiency in Spring Data JPA or Spring Data MongoDB is valuable for managing database operations in a Spring Boot application.
- Familiarity with CI/CD: Experience with Continuous Integration/Continuous Deployment tools (e.g., Jenkins, GitLab CI) for automating deployment processes.
- Containerization: Understanding of Docker, Kubernetes, and deploying Spring Boot applications in cloud environments (Google Cloud) is highly advantageous.
- Microservices Architecture: Familiarity with microservices architecture and how Spring Boot is used to develop microservices is often a requirement.
【System testing and operation】
- Write and perform unit / integration testing at the stage of system implementation to ensure good quality in line with company technical standards, and contribute to engineering wiki, and documents work.
- Implement processes and systems to monitor APIs heath, ensure production APIs are always running properly.
- Set up and monitor regular backup and restore testing including software, infrastructure, and data.
- Deliver support to team members. And investigate and resolve API errors to ensure Incident resolution in line with planned SLA agreement.
- Timely communication about incident resolution status to ensure transparency.
- Provide incident analysis and technical advice for improvement planning.
【Communication and Collaboration】
- Co-work with the team and review each other's code.
- Meet designers, developers, and project staff for alignment and progress updates.
- Gather and analyse requirements from other developers.
- Attend and speak at application development conferences and workshops.
- Document code so other developers can understand and contribute to it.
- Estimate the amount of time needed to deliver a given task.
【Technical advice and knowledge update and upgrade】
- Stay up to date with latest trends and advancements in software development
- Learn and test modern technologies, frameworks, and languages, and sharing them with colleagues.
- Decide on the best technologies and languages for the project
- Remain current on technology trends to keep our software as innovative as possible.
- Contribute to innovative and continuous improvement initiatives.
•Provide information about innovative technologies and industry trends to help improve efficiency and productivity.