What project we have for you
Backend software engineer is responsible for the design and implementation of the software that connect vehicle to the cloud, cloud to mobile, support OTA function and data collection. Backend software engineers work closely with infotainment app software engineers and mobile app engineers to provide customers with a seamless connected experience.
What you will do
- Design and implement flexible, maintainable, and performant Golang-based micro-services and API’s
- Deliver new features, enhancements, and bug fixes at a high velocity
- Leverage test-driven development principles to maximize code quality
- Actively contribute to code quality by participating in code reviews
- Author design documentation, technical specifications, and delivery plans; define roadmaps
- Embrace and refine team coding standards and processes
- Track and leverage new real-time, embedded systems technologies, software engineering best practices, and design patterns
- Collaborate with cross-functional teams, including design, product, and other main systems engineering partners
- Provide technical leadership within the engineering org
What you need for this
- 5+ years of backend software development experience in Go (automotive domain)
- 7+ years of software development experience
- Hands-on experience with RESTful API development using Gin, Echo, or similar frameworks
- Knowledge of gRPC and Protocol Buffers, including experience building or consuming gRPC services
- Experience implementing user authentication and authorization (JWT, OAuth2, RBAC)
- Exceptional software development skills with Linux, Kubernetes, Golang and C/C++,
- Extensive knowledge of software architecture, design patterns, and software development best practices
- Highly productive and motivated, able to work independently with minimal direction; able to transform ambiguity into actionable deliverables
- Excellent verbal and written communication skills
- Excellent collaborative skills, ability to provide and receive guidance
- Effective problem solving skills, able to consider alternative options and select the optimal solution
- Thoughtful, pragmatic approach that considers tradeoffs (e.g.: future proofing vs. over-engineering)
- Embraces software engineering KPIs, including delivery velocity, quality, planning
Skills