As a Senior Backend Engineer, you will play a crucial role in the development and maintenance of our backend systems. Leveraging your deep understanding of Go, along with your extensive experience in building scalable, high-performance applications, you will contribute to the architecture, design, and implementation of our backend services. You will collaborate closely with cross-functional teams to deliver robust and reliable solutions that meet the evolving needs of our platform.
Responsibilities:
- Design and Development: Lead the design and implementation of backend services and APIs using Go, ensuring scalability, performance, and maintainability.
- Architecture: Contribute to the architectural decisions of our backend systems, identifying opportunities for optimization and improvement.
- Code Review: Conduct thorough code reviews, providing constructive feedback to ensure code quality, adherence to best practices, and consistency.
- Performance Optimization: Identify and address performance bottlenecks, optimizing code and infrastructure to improve response times and scalability.
- Testing: Develop comprehensive unit tests and integration tests to ensure the reliability and stability of backend services.
- Documentation: Create and maintain technical documentation for backend systems, APIs, and processes.
- Collaboration: Work closely with frontend engineers, product managers, and other stakeholders to understand requirements, define technical solutions, and deliver features in a timely manner.
- Continuous Improvement: Stay abreast of emerging technologies, trends, and best practices in backend development, advocating for their adoption when appropriate.
Qualifications:
- 5+ years of experience in backend development, with a focus on Go programming language.
- Strong proficiency in Go programming language, with a deep understanding of its internals and ecosystem.
- Solid experience in designing, building, and maintaining scalable backend services and APIs.
- Proficiency in database technologies such as PostgreSQL, OpenSearch, or similar, including database schema design and query optimization.
- Experience with distributed systems, microservices architecture, and message queueing systems (e.g., Kafka, RabbitMQ).
- Familiarity with containerization technologies (Docker, Kubernetes) and cloud platforms (Alibaba, AWS, GCP, Azure).
- Strong knowledge of testing methodologies, including unit testing, integration testing, and test-driven development (TDD).
- Excellent problem-solving skills, with a demonstrated ability to troubleshoot complex issues and implement effective solutions.
- Clear and effective communication skills, with the ability to articulate technical concepts to both technical and non-technical audiences.
- Collaborative mindset with a willingness to share knowledge, mentor teammates, and contribute to a positive team culture.