团队介绍
蘑菇街搜索技术团队承担公司内所有核心的搜索 /推荐 /排序业务,负责导购搜索和商品搜索等重要产品的研发,每天服务上千万用户,由搜索直接和间接引导的成交额占到全站总成交超 50%的份额。
在这里,数据挖掘、自然语言处理、机器学习、分布式计算存储不再是实验室的玩具,而是流量分配、用户精准匹配的利器,你会体会到这些技术在电商系统中的威力;在这里,你需要面对海量数据的存储和实时计算,参与自主研发蘑菇街搜索引擎、检索平台、推荐系统、投放系统、 OLAP 系统等等,感受海量数据和实时高并发的不同组合方式带来的巨大挑战。
我们在做的事情
包括但不限于:
高性能购物搜索引擎—— 自主研发的新一代引擎平台 mogusearch ,支持毫秒级的索引更新;高可扩展的插件化排序框架,支持多轮排序、混排等多种排序场景;支持截断索引,实现可控的检索流程;高效的检索效率,性能较上一代引擎提升 3 倍以上。
千人千面个性化排序系统 —— 通过挖掘蘑菇街海量的商品和社交信息建立用户画像,准确刻画用户的年龄 /性别 /兴趣点;结合用户实时的访问行为,通过强化学习等方法,快速的引导用户在关键点上进行反馈,建立自身的属性信息,为用户做个性化的排序展现,同时也为商家带来更精准的流量。
实时个性化推荐系统 ——通过对用户的分析,针对不同年龄, 性别的用户,结合他们自身的兴趣点,为他们从海量商品中推荐最符合他们需求的商品。在用户的购买路径中,我们通过实时数据流, 不断的更新用户的兴趣和行为, 结合用户当前的购买场景, 合时合适的推荐商品。
一站式实时搜索平台 —— 以平台化的方式,快速、灵活的接入各种搜索应用,不管是小量数据还是海量数据,都能提供稳定高效的检索服务;平台支持分布式弹性扩容,支持自动化的全量 dump 和配置化的增量 dump ,支持高效的集群资源调度和管理。平台在依赖开源的同时,也做了深度的改造,以适应蘑菇街的业务场景;大数据 OLTP, OLAP 等相关技术领域目前也在火热进展中。
统一搜索投放平台—— 搜索的入口系统,能灵活适配不同的搜索应用,支持细粒度的业务隔离,支持多路异构数据的 rerank;同时支持多策略可配置的容灾机制,有效保护上下游系统.....
算法特征管理平台 —— 统一的特征管理和离线训练框架,支持交叉特征和基础特征混合训练,提供简单易用的特征生产和复用接口,提供快捷模型训练机制。
我们想要找的人
- 有技术激情。这点你懂的,我们要做的事情, 本身就是一件让人热血沸腾的事情,没激情,可不行!
- 有技术基情。这点你也懂的! 一般基友,在干一件这么重要的事情, 过程中,擦出的火花,足以照亮你的技术之路!这一路上,相互分享,相互支持,沟通,交流无障碍!
- 不惧挑战。面临新的挑战,我们要以最快、最牛逼的姿势做出响应。男人(妹子同理),最重要的就是——姿势要帅!
- 偶尔也需要客串下,支持下队友。不要怕麻烦,因为一起分享和解决问题,会成长得更快 !
如果你有着屠龙的本事,却干着杀鸡的活;能够一人搞定分布式、高并发、高性能,却只能日复一日的调用 api 和 bug fix ;身在不错的公司,有不错的 title ,拿着不错的薪水,却心向往着干一番事业...
嗯,我们知道,你需要一个机会....
我们能提供的
- 技术方面的挑战就不多说了哈;
- 业界很有竞争力的薪资,去年大 boss 给全员加薪 50%还有印象不?
- 每年一次的出国 outing ;
- 新人入职配备新款 macbook pro,写起代码来杠杠的;
- 每天免费丰盛的早餐,还有吃不完的零食,绝对是码农最爱;
- 公司新开了健身房,关键是每天有很多运营妹子去锻炼;
如何投递简历
- 邮件发送: xiaobao@mogujie.com
- 招聘系统内部推荐至职位:资深搜索开发工程师
具体招聘职位
1.资深搜索开发工程师(C++引擎方向)
岗位描述:
- 负责蘑菇街购物搜索引擎的架构优化和功能开发,构建高可靠性、高可扩展性的体系结构,满足日趋复杂的业务需求;
- 负责引擎外围核心系统的架构设计和开发;
- 针对电子商务搜索的业务现状,探索和创新电商搜索技术;
岗位要求:
- 熟练掌握 Linux C/C++,对数据结构和算法设计有较为深刻的理解;
- 熟悉网络开发,多线程开发,对 Linux 系统原理有一定的理解;
- 具有一定的系统设计和架构能力,能够独立完成子系统的设计和实现;
- 热爱技术,勤于钻研,追求极致;
- 良好的技术视野,能适应新业务新技术快速的发展变更,对新业务 /新技术有持续学习的热情;
- 优秀的分析问题解决问题能力,喜欢挑战自己,良好的沟通能力;
符合以下条件者优先:
- 有搜索引擎开发经验;
- 熟悉信息检索理论,具有高并发在线服务系统开发经验;
- 熟悉 Linux 系统脚本,能够熟练使用 shell/Python/Go ;
2.资深搜索开发工程师(搜索平台方向)
岗位描述:
- 负责实时搜索的开发,引擎内核深入,分布式架构和开发;
- 负责 OLAP 分布式查询引擎系统的架构和开发;
- 负责搜索 Dump 系统的架构优化和开发;
岗位要求:
- 精通 Java , 3 年以上 java 开发经验;
- 熟悉多线程,熟悉相关并发框架,有线程模型设计能力和实现能力;
- 熟悉 java 性能调优,对 JVM GC 调优有实践经验;
- 有分布式系统理论基础和开发经验;
- 良好的逻辑思维能力,良好的团队沟通能力;
符合以下条件者优先:
- 深入理解 Lucene ,能够对比 Solr , Elasticsearch 在分布式、引擎内核的优缺点;
- 有实际存储系统开发经验;
- 熟悉分布式计算框架或弹性调度框架,熟悉 Apach Presto/Apache Drill/Hbase/Yarn/mesos 等一项或多项,并有过深入研究;
3. 资深系统开发工程师
岗位描述:
- 负责搜索排序系统、推荐系统、投放系统的架构、研发和持续优化。
- 负责算法实时数据流、特征管理、独立 abtest 系统等开发;
- 具体领域包括但不限于高并发高可用在线系统、分布式存储、大规模分布式计算、实时计算、跨平台资源调度、大规模分布式算法平台等;
岗位要求:
- 熟悉 linux 平台,熟练掌握 java 或 c++;
- 3 年以上系统研发经验,从事过大型系统的架构、研发工作;
- 对网络,多线程编程,数据结构和算法有较深的理解;
- 有分布式系统理论基础和实践经验,熟悉常用网络框架、序列化方式等;
- 有良好的沟通表达能力和团队合作精神,热衷技术,乐于寻求挑战和突破自我。
4.资深应用开发工程师
岗位描述:
- 负责搜索产品的设计、实现、优化;
- 负责核心业务平台的架构优化和开发;
- 参与部门技术架构设计及组件开发经验的积累及知识传递;
岗位要求:
- 具有扎实的后端开发功底,熟练掌握基本算法 /数据结构;
- Java/PHP 至少熟练其一,熟悉常用开发框架并有良好的开发习惯;
- 良好的业务理解能力,能从业务和技术结合的角度去推动业务的发展;
- 较强的分析和解决问题的能力,沟通表达能力强,推动力强;
- 思路敏捷清晰,善于沟通,勤于学习;
5.资深搜索引擎算法工程师
岗位描述:
- 负责蘑菇街搜索相关的算法研发工作
- 通过算法挖掘海量数据, 分析用户意图,并优化搜索质量;
- 通过深入分析搜索场景, 制定符合场景的搜索策略, 提升用户搜索体验;
岗位要求:
- 熟悉搜索系统, 有 3 年及以上搜索系统优化经验;
- 对 query 分析, 用户意图分析, 模型调优有较深入的理解, 深入了解常见的搜索相关算法;
- 有良好的产品意识, 能够根据不同业务场景, 结合产品特征, 设定搜索优化方案;
- 能够带领团队, 制定长期技术规划, 按照长期业务目标优化搜索系统;
6.资深推荐算法工程师
岗位描述:
- 负责蘑菇街推荐相关的算法研发工作
- 通过算法挖掘海量数据, 根据不同场景, 设计推荐算法, 提升推荐质量;
- 结合用户行为,建立用户画像, 按照用户自身特征个性化推荐, 提升推荐质量 ;
岗位要求:
- 熟悉推荐相关算法, 有 3 年及以上推荐系统优化经验;
- 有良好的产品意识, 能够根据不同业务场景, 设计推荐策略;
- 能够带领团队, 制定长期技术规划, 按照长期业务目标优化推荐系统;
7.资深排序系统算法工程师
岗位描述:
- 通过蘑菇街数据, 使用机器学习方式, 对排序场景进行优化;
- 优化特征工程, 建立有效预估模型, 提升线上排序系统表现;
岗位要求:
- 有大规模数据处理经验, 有 3 年及以上预估模型优化经验;
- 对特征工程有深入理解, 能指导团队, 建立特征分析体系, 指导后续模型优化;
- 能够带领团队, 制定长期技术规划, 按照长期业务目标优化预估模型;