携程高级后端开发工程师(MJ028422)
社招全职3年以上机票业务开发地点:北京状态:招聘
任职要求
1. 大学本科以上学历,硕士优先,计算机、软件工程及相关专业毕业; 2. 3年及以上开发经验,有大中型互联网后台服务设计经验(必须); 3. 熟悉各种设计模式,对java面向对象编程有深刻的理解,具有优秀的程序设计能力; 4. 熟悉主流的Java框架和工具(dubbo/spring/guava/netty/elk等); 5. 掌握多线程及高性能应用的设计与编码,有高并发应用开发经验; 6. 熟悉分布式系统(服务框架、消息、缓存、日志)的应用; 7. 熟悉图计算相关技术更佳; 8. 熟练使用Linux 操作系统。
工作职责
1. 对标国际领先的机票搜索引擎,开发和优化携程自有的机票搜索系统,你负责的系统需要从全球5000多个城市构建的航路中挑选出最优的路线,从百万级的航班数据中构建出最优的结果,以最快的速度展现给用户; 2. 你要能用最小的计算资源构建出最优的结果,多快好省是我们追求的终极目标;
包括英文材料
学历+
设计模式+
https://liaoxuefeng.com/books/java/design-patterns/index.html
设计模式,即Design Patterns,是指在软件设计中,被反复使用的一种代码设计经验。使用设计模式的目的是为了可重用代码,提高代码的可扩展性和可维护性。
[英文] Design Patterns
https://refactoring.guru/design-patterns
Design patterns are typical solutions to common problems in software design. Each pattern is like a blueprint that you can customize to solve a particular design problem in your code.
https://www.youtube.com/watch?v=NU_1StN5Tkk
Design Patterns tutorial explained in simple words using real-world examples.
Java+
https://www.youtube.com/watch?v=eIrMbAQSU34
Master Java – a must-have language for software development, Android apps, and more! ☕️ This beginner-friendly course takes you from basics to real coding skills.
Dubbo+
https://dubbo.apache.org/en/overview/mannual/java-sdk/tasks/
Spring+
https://liaoxuefeng.com/books/java/spring/index.html
Spring是一个支持快速开发Java EE应用程序的框架。它提供了一系列底层容器和基础设施,并可以和大量常用的开源框架无缝集成,可以说是开发Java EE应用程序的必备。
https://spring.io/guides/gs/rest-service
https://spring.io/quickstart
Level up your Java code and explore what Spring can do for you.
多线程+
https://liaoxuefeng.com/books/java/threading/basic/index.html
和单线程相比,多线程编程的特点在于:多线程经常需要读写共享数据,并且需要同步。
https://www.youtube.com/watch?v=_uQgGS_VIXM&list=PLsc-VaxfZl4do3Etp_xQ0aQBoC-x5BIgJ
https://www.youtube.com/watch?v=IEEhzQoKtQU
https://www.youtube.com/watch?v=mTGdtC9f4EU&list=PLL8woMHwr36EDxjUoCzboZjedsnhLP1j4
https://www.youtube.com/watch?v=TPVH_coGAQs&list=PLk6CEY9XxSIAeK-EAh3hB4fgNvYkYmghp
https://www.youtube.com/watch?v=xPqnoB2hjjA
This video is an introduction to multithreading in modern C++.
https://www.youtube.com/watch?v=YKBwKy5PrpQ
Rust threading is easy to implement and improves the efficiency of your applications on multi-core systems!
高并发+
https://www.baeldung.com/concurrency-principles-patterns
In this tutorial, we’ll discuss some of the design principles and patterns that have been established over time to build highly concurrent applications.
https://www.baeldung.com/java-concurrency
Handling concurrency in an application can be a tricky process with many potential pitfalls. A solid grasp of the fundamentals will go a long way to help minimize these issues.
https://www.oreilly.com/library/view/concurrency-in-go/9781491941294/
You’ll understand how Go chooses to model concurrency, what issues arise from this model, and how you can compose primitives within this model to solve problems.
https://www.oreilly.com/library/view/modern-concurrency-in/9781098165406/
With this book, you'll explore the transformative world of Java 21's key feature: virtual threads.
https://www.youtube.com/watch?v=qyM8Pi1KiiM
https://www.youtube.com/watch?v=wEsPL50Uiyo
分布式系统+
https://www.distributedsystemscourse.com/
The home page of a free online class in distributed systems.
https://www.youtube.com/watch?v=7VbL89mKK3M&list=PLOE1GTZ5ouRPbpTnrZ3Wqjamfwn_Q5Y9A
缓存+
https://hackernoon.com/the-system-design-cheat-sheet-cache
The cache is a layer that stores a subset of data, typically the most frequently accessed or essential information, in a location quicker to access than its primary storage location.
https://www.youtube.com/watch?v=bP4BeUjNkXc
Caching strategies, Distributed Caching, Eviction Policies, Write-Through Cache and Least Recently Used (LRU) cache are all important terms when it comes to designing an efficient system with a caching layer.
https://www.youtube.com/watch?v=dGAgxozNWFE
Linux+
https://ryanstutorials.net/linuxtutorial/
Ok, so you want to learn how to use the Bash command line interface (terminal) on Unix/Linux.
https://ubuntu.com/tutorials/command-line-for-beginners
The Linux command line is a text interface to your computer.
https://www.youtube.com/watch?v=6WatcfENsOU
In this Linux crash course, you will learn the fundamental skills and tools you need to become a proficient Linux system administrator.
https://www.youtube.com/watch?v=v392lEyM29A
Never fear the command line again, make it fear you.
https://www.youtube.com/watch?v=ZtqBQ68cfJc
相关职位
社招3年以上A47372
1、参与并负责零钱类业务核心系统的的开发及维护; 2、参与并负责零钱类业务系统的稳定性建设,报警,监控,容灾,降级等; 3、参与设计并实现具备可扩展性和可维护性的系统方案; 4、充分理解零钱类业务的业务特点,开发建设适合特定领域模型的系统; 5、沉淀技术能力和行业经验,与平台一起成长和发展。
更新于 2023-06-29
社招3年以上A12583
1、参与并负责零钱类业务核心系统的的开发及维护; 2、参与并负责零钱类业务系统的稳定性建设,报警,监控,容灾,降级等; 3、参与设计并实现具备可扩展性和可维护性的系统方案; 4、充分理解零钱类业务的业务特点,开发建设适合特定领域模型的系统; 5、沉淀技术能力和行业经验,与平台一起成长和发展。
更新于 2023-06-29

社招3年以上计算机网络技术类
1、负责经营系统、财务系统的设计、开发、优化等研发工作,保证代码质量和开发进度; 2、参与研发过程中的需求分析和架构设计; 3、负责日常技术分享,开发相关文档编写; 4、完成分配的其他工作。
更新于 2025-09-08