Salary Range
$53,040 - $71,760 /year
EstimatedThis salary is estimated based on similar roles. The actual salary may vary.
我们的酒店管理解决方案由多个面向领域的微服务(domain-oriented microservices)组成,并由数个跨职能团队共同开发。您将参与开发面向酒店行业的分布式系统的一部分。该系统由多个面向领域的微服务组成,由若干跨职能团队共同开发。通过您的工作,您将为全球数以千计酒店员工的工作体验带来改善。 
随着业务的发展,需招募高级Backend开发工程师若干名,详情如下: 
主要职责范围 
1. 系统功能的开发、实施与维护 
• 运用领域驱动设计(Domain-Driven Design)的原则,在现有的微服务(microservice)生态系统中设计可扩展的解决方案。 
• 实现复杂的酒店管理业务逻辑,包括预订、费用结算和报表功能。 
• 在系统架构不断进化的过程中,确保其兼容性。 
• 设计容错组件,以应对高吞吐量的数据处理任务。 
• 与产品团队协作,将业务需求进行技术转化。  
2. 为第三方构建专用的数据导出解决方案 
• 为与酒店管理系统对接的第三方系统设计并实现稳健的 API 集成。 
• 为酒店管理系统(PMS)、渠道管理系统(Channel Management)及收益管理工具创建数据导出机制。 
• 为B2B集成实施安全的身份验证和授权机制。 
• 开发支持多种格式(XML, JSON, CSV)的基于文件的导出解决方案。 
• 确保外部数据交换的一致性和可靠性。 
• 管理API版本控制,并维护现有集成兼容性。  
3. 为分析和报表目的构建可扩展的数据聚合策略 
• 设计高效的数据聚合管道,用于酒店经营分析和商业智能(BI)。 
• 对于酒店大数据场景设计实时和批处理解决方案。 
• 创建针对入住率、收入和运营指标报表的优化数据模型。 
• 开发处理复杂酒店数据转换的ETL(抽取、转换、加载)流程。 
• 确保来自多个数据源的数据质量和一致性。 
• 与数据分析师协作,理解报表需求并优化查询性能。  
4. 每日进行代码审查并参与评审流程 
• 专注于代码质量、安全性和性能进行彻底的代码审查。 
• 确保代码符合编码标准、SOLID原则及既定的架构模式。 
• 就实现方法提供富有建设性的反馈并提出改进建议。 
• 审查数据库查询,寻找优化机会并发现潜在的性能问题。 
• 验证错误处理、日志记录和监控功能的正确实施。 
• 提交带有清晰描述和上下文的、文档齐全的拉取/合并请求(Pull/Merge Requests)。 
• 及时响应审查反馈并落实改进建议。 
• 参与关于实现方法和设计决策的技术讨论。 
• 遵循既定的分支策略和合并流程。 
• 确保所有代码变更都包含适当的单元测试和集成测试。 
• 保持较高的代码覆盖率和质量。  
5. 使用高级工具优化API和报表中SQL查询的性能 
• 分析并优化处理大型酒店数据集的复杂PostgreSQL查询。 
• 为时序酒店数据设计高效的数据库索引和分区策略。 
• 实施查询优化技术,包括适当的连接(Join)策略和子查询优化。 
• 使用数据库性能分析工具识别并解决性能瓶颈。 
• 监控查询执行计划,并在适当情况下实施缓存策略。 
• 优化Entity Framework查询并实施高效的数据访问模式。  
6. 在敏捷开发的框架下进行协作式、迭代式的软件开发 
• 积极参与例会、迭代规划和评审会议等。 
• 与质量保证(QA)、产品构架以及产品团队等跨职能团队进行有效协作。 
• 通过提供准确的工作量预估和技术洞察,参与迭代规划。 
• 在保持代码质量和交付时间线的前提下,适应不断变化的需求。 
• 通过自动化测试和监控实践持续集成与持续部署(CI/CD)。 
• 参与生产环境问题的事件响应和事后分析(Post-mortem analysis)。  
技术需求 
• C# 9, .NET Core:使用最新的C#特性和现代.NET生态系统。 
• PostgreSQL:高级SQL特性、JSON支持、分区及性能调优。 
• 微服务:面向服务的架构、服务间通信及分布式系统模式。 
• Swagger:API文档生成、测试及客户端代码生成。 
• Docker:容器化、编排及部署策略。 
• Redis:缓存、会话管理及分布式数据结构。 
• Kafka:事件流处理、消息队列及服务间的异步通信。 
• Elastic Search(加分项):全文搜索、日志聚合及分析。 
• Visual Studio 2022 / Resharper / Rider:配备高级调试和重构工具的专业开发环境。  
Your job will be to develop a part of a distributed system that serves the hospitality industry. The system consists of many domain-oriented microservices developed under a few cross-functional teams. You can bring a smile to the faces of thousands of people working in hotels across the globe.
Key Areas of Responsibilities
Designing, implementing, and maintaining new functionalities within a living system
• Design scalable solutions within existing microservices ecosystem using Domain-Driven Design principles
• Implement complex business logic for hotel management operations including reservations, billing, and reporting
• Ensure backward compatibility while evolving system architecture
• Design fault-tolerant components that handle high-volume hospitality data processing
• Collaborate with product teams to translate business requirements into technical specificationsBuilding dedicated export solutions for 3rd parties
• Design and implement robust APIs integration for external hotel management systems
• Create data export mechanisms for property management systems, channel managers, and revenue management tools
• Implement secure authentication and authorization for B2B integrations
• Develop file-based export solutions supporting various formats (XML, JSON, CSV)
• Ensure data consistency and reliability in external data exchanges
• Manage API versioning and maintain backward compatibility for existing integrationsBuilding scalable aggregated data strategy for analytical and reporting purposes
• Design efficient data aggregation pipelines for hotel performance analytics and business intelligence
• Implement real-time and batch processing solutions for large-scale hospitality data
• Create optimized data models for reporting on occupancy, revenue, and operational metrics
• Develop ETL processes that handle complex hotel data transformations
• Ensure data quality and consistency across multiple data sources
• Collaborate with data analysts to understand reporting requirements and optimize query performancePerforming code reviews daily and participating in code review process
• Conduct thorough code reviews focusing on code quality, security, and performance
• Ensure adherence to coding standards, SOLID principles, and established architectural patterns
• Provide constructive feedback on implementation approaches and suggest improvements
• Review database queries for optimization opportunities and potential performance issues
• Validate proper error handling, logging, and monitoring implementation
• Submit well-documented pull/merge requests with clear descriptions and context
• Respond promptly to review feedback and implement suggested improvements
• Engage in technical discussions about implementation approaches and design decisions
• Follow established branching strategies and merge procedures
• Ensure all code changes include appropriate unit and integration tests
• Maintain high code coverage and quality metricsUsing advanced tools to optimize performance of SQL queries used in APIs and reports
• Analyze and optimize complex PostgreSQL queries handling large hospitality datasets
• Design efficient database indexes and partitioning strategies for time-series hotel data
• Implement query optimization techniques including proper join strategies and subquery optimization
• Use database profiling tools to identify and resolve performance bottlenecks
• Monitor query execution plans and implement caching strategies where appropriate
• Optimize Entity Framework queries and implement efficient data access patternsWorking in a collaborative and iterative software development process with an Agile team
• Actively participate in Scrum ceremonies including daily standups, sprint planning, and retrospectives
• Collaborate effectively with cross-functional teams including QA, Infrastructure, and Product Team people
• Contribute to sprint planning by providing accurate effort estimates and technical insights
• Adapt to changing requirements while maintaining code quality and delivery timelines
• Practice continuous integration and deployment with automated testing and monitoring
• Participate in incident response and post-mortem analysis for production issuesTechnologies used:
• C# 9, .NET Core - Latest C# features and modern .NET ecosystem
• PostgreSQL - Advanced SQL features, JSON support, partitioning, and performance tuning
• Microservices - Service-oriented architecture, inter-service communication, and distributed system patterns
• Swagger - API documentation, testing, and client code generation
• Docker - Containerization, orchestration, and deployment strategies
• Redis - Caching, session management, and distributed data structures
• Kafka - Event streaming, message queuing, and asynchronous communication between services
• Elastic Search (nice to have) - Full-text search, log aggregation, and analytics
• Visual Studio 2022 / Resharper / Rider - Professional development environment with advanced debugging and refactoring tools