美团商业增值-广告投放平台研发工程师
社招全职3年以上核心本地商业-业务研发平台地点:北京 | 上海状态:招聘
任职要求
1、本科及以上学历,3年及以上互联网系统研发经验; 2、 Java基础扎实,良好的代码风格,熟悉常用的设计方法和设计模式,对面向对象、领域驱动(DDD)开发有一定的经验; 3、熟练掌握Spring、Spring MVC、Mybatis等常用开发框架,熟练掌握JVM性能调优,熟悉 多线程、NIO框架(如Netty)、RPC调用框架(如Thrift)、消息队列框架(RabbitMQ/Kafka等)、分布式协调服务 Zookeeper; 4、具备大数据处理相关工作经验,熟练使用Hadoop、Hive、Spark、Flink、Strom等一种或者几种大数据离线或实时计算相关框架; 5、熟悉常用存储及OLAP存储引擎,如MySQL、Redis、ES、Doris、Tidb等; 6、主导过大型复杂分布式互联网业务系统的设计,有高并发场景下的架构设计和稳定性保障经验; 7、能够及时关注业界前沿技术动态和发展方向,乐于分享技术,解读过部分开源框架源码,同时要有强烈的责任心、主动性和团队合作精神。 具备以下条件优先 1、对商业变现敏感,有国内外广告投放平台的建设经验者优先; 2、业务sense强、能落地,具备较强的业务理解能力,并能基于业务理解给出系统化的解决方案; 3、关注系统设计,对新技术、新趋势有较强的敏感性。
工作职责
1、负责美团/Keeta广告主投放平台建设,提供竞价、合约和增值等多类广告产品,快速支撑美团多业务(外卖/闪购/医药)、多客户类型(中小/KA/品牌商)、多产品线的商业化需求; 2、跟多业务线合作,深入了解不同行业特点及其对广告产品的能力诉求,设计可扩展的系统架构,支持产品能力快速迭代,共同完成收入目标; 3、系统稳定性保障,通过改进系统架构、简化流程、系统监控等多种手段保障系统稳定性,为业务发展保驾护航。
包括英文材料
学历+
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.
设计模式+
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.
面向对象+
https://liaoxuefeng.com/books/java/oop/index.html
面向对象编程,英文是Object-Oriented Programming,简称OOP。
https://liaoxuefeng.com/books/python/oop/index.html
面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想。
https://www.youtube.com/watch?v=SiBw7os-_zI
Learn the basics of object-oriented programming all in one video.
DDD+
https://ddd-crew.github.io/ddd-starter-modelling-process/
This process gives you a step-by-step guide for learning and practically applying each aspect of Domain-Driven Design (DDD) - from orienting around an organisation’s business model to coding a domain model.
[英文] Domain Driven Design
https://medium.com/@matteopampana/list/domain-driven-design-c1efaabe287e
Everyone talks about DDD, but how many understand and correctly apply Domain-Driven Design? I want to be one of them.
https://redis.io/glossary/domain-driven-design-ddd/
Domain-Driven Design (DDD) is a software development philosophy that emphasizes the importance of understanding and modeling the business domain.
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.
MyBatis+
https://mybatis.org/mybatis-3/getting-started.html
https://www.baeldung.com/mybatis
MyBatis is an open source persistence framework which simplifies the implementation of database access in Java applications.
开发框架+
[英文] Understanding Modern Development Frameworks: A Guide for Developers and Technical Decision-makers
https://www.freecodecamp.org/news/understanding-modern-development-frameworks-guide-for-devs/
JVM+
https://www.freecodecamp.org/news/jvm-tutorial-java-virtual-machine-architecture-explained-for-beginners/
https://www.youtube.com/watch?v=e2zmmkc5xI0
性能调优+
https://goperf.dev/
The Go App Optimization Guide is a series of in-depth, technical articles for developers who want to get more performance out of their Go code without relying on guesswork or cargo cult patterns.
https://web.dev/learn/performance
This course is designed for those new to web performance, a vital aspect of the user experience.
https://www.ibm.com/think/insights/application-performance-optimization
Application performance is not just a simple concern for most organizations; it’s a critical factor in their business’s success.
https://www.oreilly.com/library/view/optimizing-java/9781492039259/
Performance tuning is an experimental science, but that doesn’t mean engineers should resort to guesswork and folklore to get the job done.
多线程+
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!
RPC+
https://javaguide.cn/distributed-system/rpc/rpc-intro.html
为什么要 RPC ? 因为,两个不同的服务器上的服务提供的方法不在一个内存空间,所以,需要通过网络编程才能传递方法调用所需要的参数。并且,方法调用的结果也需要通过网络编程来接收。
https://www.youtube.com/watch?v=S2osKiqQG9s
This video is part of an 8-lecture series on distributed systems, given as part of the undergraduate computer science course at the University of Cambridge.
消息队列+
https://www.youtube.com/watch?v=xErwDaOc-Gs
RabbitMQ+
[英文] RabbitMQ Tutorials
https://www.rabbitmq.com/tutorials
These tutorials cover the basics of creating messaging applications using RabbitMQ.
https://www.youtube.com/watch?v=bfVddTJNiAw
RabbitMQ is a powerful message broker that can help you create resilient and scalable applications.
Kafka+
https://developer.confluent.io/what-is-apache-kafka/
https://www.youtube.com/watch?v=CU44hKLMg7k
https://www.youtube.com/watch?v=j4bqyAMMb7o&list=PLa7VYi0yPIH0KbnJQcMv5N9iW8HkZHztH
In this Apache Kafka fundamentals course, we introduce you to the basic Apache Kafka elements and APIs, as well as the broader Kafka ecosystem.
Hadoop+
https://www.runoob.com/w3cnote/hadoop-tutorial.html
Hadoop 为庞大的计算机集群提供可靠的、可伸缩的应用层计算和存储支持,它允许使用简单的编程模型跨计算机群集分布式处理大型数据集,并且支持在单台计算机到几千台计算机之间进行扩展。
[英文] Hadoop Tutorial
https://www.tutorialspoint.com/hadoop/index.htm
Hadoop is an open-source framework that allows to store and process big data in a distributed environment across clusters of computers using simple programming models.
Hive+
[英文] Hive Tutorial
https://www.tutorialspoint.com/hive/index.htm
Hive is a data warehouse infrastructure tool to process structured data in Hadoop. It resides on top of Hadoop to summarize Big Data, and makes querying and analyzing easy.
https://www.youtube.com/watch?v=D4HqQ8-Ja9Y
Spark+
[英文] Learning Spark Book
https://pages.databricks.com/rs/094-YMS-629/images/LearningSpark2.0.pdf
This new edition has been updated to reflect Apache Spark’s evolution through Spark 2.x and Spark 3.0, including its expanded ecosystem of built-in and external data sources, machine learning, and streaming technologies with which Spark is tightly integrated.
Flink+
https://nightlies.apache.org/flink/flink-docs-release-2.0/docs/learn-flink/overview/
This training presents an introduction to Apache Flink that includes just enough to get you started writing scalable streaming ETL, analytics, and event-driven applications, while leaving out a lot of (ultimately important) details.
https://www.youtube.com/watch?v=WajYe9iA2Uk&list=PLa7VYi0yPIH2GTo3vRtX8w9tgNTTyYSux
Today’s businesses are increasingly software-defined, and their business processes are being automated. Whether it’s orders and shipments, or downloads and clicks, business events can always be streamed. Flink can be used to manipulate, process, and react to these streaming events as they occur.
大数据+
https://www.youtube.com/watch?v=bAyrObl7TYE
https://www.youtube.com/watch?v=H4bf_uuMC-g
With all this talk of Big Data, we got Rebecca Tickle to explain just what makes data into Big Data.
OLAP+
https://www.youtube.com/watch?v=iw-5kFzIdgY
OLAP (for online analytical processing) is software for performing multidimensional analysis at high speeds on large volumes of data from a data warehouse, data mart, or some other unified, centralized data store.
MySQL+
https://juejin.cn/post/7190306988939542585
这是一篇 MySQL 通关一篇过硬核经验学习路线,包括数据库相关知识,SQL语句的使用,数据库约束,设计等。
[英文] MySQL Tutorial
https://www.mysqltutorial.org/
your go-to resource for mastering MySQL in a fast, easy, and enjoyable way.
https://www.youtube.com/watch?v=5OdVJbNCSso
MySQL SQL tutorial for beginners
https://www.youtube.com/watch?v=7S_tz1z_5bA
This beginner-friendly course teaches you SQL from scratch.
Redis+
[英文] Developer Hub
https://redis.io/dev/
Get all the tutorials, learning paths, and more you need to start building—fast.
https://www.runoob.com/redis/redis-tutorial.html
REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。
https://www.youtube.com/watch?v=jgpVdJB2sKQ
In this video I will be covering Redis in depth from how to install it, what commands you can use, all the way to how to use it in a real world project.
ElasticSearch+
https://www.youtube.com/watch?v=a4HBKEda_F8
Learn about Elasticsearch with this comprehensive course designed for beginners, featuring both theoretical concepts and hands-on applications using Python (though applicable to any programming language). The course is structured in two parts: first covering essential Elasticsearch fundamentals including index management, document storage, text analysis, pipeline creation, search functionality, and advanced features like semantic search and embeddings; followed by a practical section where you'll build a real-world website using Elasticsearch as a search engine, working with the Astronomy Picture of the Day (APOD) dataset to implement features such as data cleaning pipelines, tokenization, pagination, and aggregations.
Doris+
https://doris.apache.org/docs/gettingStarted/what-is-apache-doris
高并发+
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://roadmap.sh/system-design
Everything you need to know about designing large scale systems.
https://www.youtube.com/watch?v=F2FmTdLtb_4
This complete system design tutorial covers scalability, reliability, data handling, and high-level architecture with clear explanations, real-world examples, and practical strategies.
相关职位
社招2年以上核心本地商业-业
1. 设计与实现高可用的广告投放系统,承载高并发、低延迟的广告投放需求 2. 实现与优化针对不同广告位置的投放策略,不断提高流量变现效率 3. 优化广告召回、排序、竞价、流量优选等核心策略
更新于 2025-06-04
社招核心本地商业-业
1.负责广告全产品线智能投放业务,包含智能出价(OCPX、BCB)、智能定向、智能预算、智能诊断建议等模块,致力于优化客户投放效果,手段包括但不限于深度学习、自动控制、进化策略以及强化学习前沿技术; 2.负责商家补贴智能营销算法,针对多种补贴活动场景提升补贴效率,手段包括但不限于基于运筹优化、组合优化、uplift model的智能补贴策略和联动策略; 3.负责广告投放运营平台智能化建设,实现精准营销提高运营效率,为到家广告提供优质供给; 4.结合以上方向的研究和实践,探索前沿技术,沉淀技术框架和算法能力,增强技术团队影响力。
更新于 2024-12-12
社招3年以上核心本地商业-业
1、广告主投放及增值平台建设,构建统一易扩展的广告预算、出价、创意、效果数据、合约等系统能力,快速支撑美团多业务(外卖/闪购/医药)、多客户类型(中小/KA/品牌商)、多产品线的商业化需求; 2、广告供给运营平台建设,支撑各类广告主运营及营销策略,构建包含诊断扶持、投放建议、营销活动、任务体系和销售体系等的运营矩阵,与广告业务一起共同完成供给目标; 3、优化广告计费结算系统,通过改进系统架构、简化流程、对抗演练等手段,保障系统稳定承载更高吞吐、更低延迟的计费流量; 4、完善面向广告全链路的业务保障体系,增强广告业务及系统稳定性,包含投放数据正确性保证、广告计费资金安全保障、统一业务监控诊断定位等方向。
更新于 2025-05-14