小米快游戏Runtime高级技术专家
社招全职3年以上A42354地点:南京状态:招聘
任职要求
1. 核心技术能力 精通C++11/14/17,熟悉STL、设计模式及高性能编程技巧(如内存管理、多线程优化) 深入理解OpenGL/ES图形渲染管线,有移动端图形性能调优经验 熟悉Linux/Android底层开发环境,掌握NDK/JNI等跨语言调用机制 2. 加分项 熟悉JavaScript/TypeScript开发,能结合C++与JS引擎(如V8)进行混合编程 了解Cocos Creator或其他开源游戏引擎架构,有引擎定制或插件开发经验 具备跨平台框架(如Qt、Flutter)开发经验,熟悉跨厂商技术标准对接流程 3. 综合素质 计算机相关专业优先,3年以上中大型项目开发经验。 逻辑严谨,具备独立技术攻关能力,对性能优化有执著追求。 良好的沟通能力,能适应多厂商协同开发模式
工作职责
1. 快游戏框架开发与优化 参与小米的快游戏框架设计与核心模块开发,重点负责高性能渲染引擎、跨平台适配及底层接口实现 基于OpenGL/ES进行图形渲染管线优化,提升框架在移动端的渲染效率与兼容性 解决多厂商硬件差异导致的性能瓶颈,确保框架在主流设备上的稳定运行。 2. 工具链与生态支持 开发配套工具链(如调试工具、性能分析工具),支持开发者高效接入快游戏框架 结合Cocos等开源引擎特性,优化框架与第三方引擎的集成方案(加分项) 3. 跨平台与网络通信 设计并实现跨平台通信协议,支持快游戏在Android、HarmonyOS等多系统的无缝运行 优化网络通信模块(如WebSocket、HTTP/2),降低延迟并提升数据传输效率 4. 技术研究与文档输出 跟踪图形学、编译技术等领域的前沿进展,推动框架技术升级 撰写技术文档,主导内部技术分享,提升团队整体能力
包括英文材料
C+++
https://www.learncpp.com/
LearnCpp.com is a free website devoted to teaching you how to program in modern C++.
https://www.youtube.com/watch?v=ZzaPdXTrSb8
设计模式+
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/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!
OpenGL+
https://www.youtube.com/watch?v=45MIykWJ-C4
Learn how to use OpenGL to create 2D and 3D vector graphics in this course.
https://www.youtube.com/watch?v=W3gAzLwfIP0&list=PLlrATfBNZ98foTJPJ_Ev03o2oq3-GGOS2
https://www.youtube.com/watch?v=XpBGwZNyUh0&list=PLPaoO-vpZnumdcb4tZc4x5Q-v7CkrQ6M-
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.
性能调优+
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.
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
Android+
https://roadmap.sh/android
Step by step guide to becoming an Android developer .
https://www.youtube.com/playlist?list=PLQkwcJG4YTCSVDhww92llY3CAnc_vUhsm
NDK+
https://developer.android.com/ndk/guides
The Native Development Kit (NDK) is a set of tools that allows you to use C and C++ code with Android.
https://www.youtube.com/watch?v=YvCRlJToCAg
While most Android apps are written in pure Java, Android's Native Development Kit (NDK) enables us to access code written in C/C++ via Java Native Interface (JNI).
JNI+
https://www.baeldung.com/jni
JDK introduces a bridge between the bytecode running in our JVM and the native code (usually written in C or C++).
https://www.youtube.com/watch?v=pyXnX2SEaFc
Become an expert the Java Native Interface with this 28-hour course.
JavaScript+
https://developer.mozilla.org/zh-CN/docs/Learn_web_development/Core/Scripting
[英文] Learn JavaScript
https://learnjavascript.online/
The easiest way to learn & practice modern JavaScript
[英文] Learn JavaScript
https://web.dev/learn/javascript
https://www.youtube.com/watch?v=zuKbR4Q428o
Write bulletproof JavaScript code with unit testing!
TypeScript+
https://www.youtube.com/watch?v=JHEB7RhJG1Y
Master TypeScript from basics to advanced concepts through hands-on tutorials covering type annotations, generics, data fetching, Zod library, and more, with practical challenges for effective real-world application.
Qt+
[英文] Qt for Beginners
https://wiki.qt.io/Qt_for_Beginners
This tutorial series target mainly Qt4. Even if most of these tutorials are also valid for Qt5, the case of Qt5 is discussed in a separate part.
https://www.qt.io/academy
We believe that the future is built with Qt and that learning even the basics can enable people of all backgrounds to become more innovative by exploring the creation of apps, solutions, or other types of interfaces as a part of their studies, business – or even just for fun.
Flutter+
https://flutter.dev/learn
With codelabs, YouTube videos, detailed docs, and more, find everything you need to get started with Flutter or continue your learning journey.
https://www.youtube.com/watch?v=VPvVD8t02U8
Learn how to use Flutter in this complete course for beginners.
相关职位
实习
1.负责小米快游戏引擎和调试工具的迭代,保证性能和体验处于行业领先。 2.深入了解开发者需求,通过市场调研、用户反馈等渠道收集信息,为产品优化提供依据。 3.负责撰写详细的产品需求文档(PRD),清晰描述产品功能和特性。 4.参与产品的全生命周期管理,包括需求分析、设计、开发、测试和上线等阶段。 5.跟进项目进度,协调各方资源,确保产品按时交付。 6.识别快游戏开发者在对接时的问题和诉求,并提供解决方案。
更新于 2025-08-11
社招3-5年D6921
快手游戏事业部正在招募富有潜力,才华横溢的同学,将游戏团队管理,游戏研发,生产流程,游戏运营做为对象,探索,研究和实施元宇宙时代对游戏生产效能进行提质增效的各种场景,结合日趋成熟的大数据及AI技术,打造领先的企业级SaaS+aPaaS解决方案并赋能游戏生产流程,助力快手游戏高速发展,职位的具体职责如下: 1、参与针对游戏生产流程的协作,负责游戏营销活动相关系统的设计、开发与维护; 2、支撑各类游戏活动的快速上线与迭代; 3、深入发掘和分析业务需求,撰写技术方案和系统设计,以及相关的代码开发; 4、负责梳理复杂业务流程,合理划分领域,抽象系统,提炼成中台,以提高研发效率; 5、为团队引入创新的技术、创新的解决方案,用创新的思路解决问题。
更新于 2025-07-28
社招5年以上D6921
负责快手游戏买量投放系统后台架构设计、开发和优化工作,百亿级广告买量引擎的设计和优化。 1、参与针对游戏投放流程的解决方案的设计与研发; 2、深入发掘和分析业务需求,撰写技术方案和系统设计,以及相关的代码开发; 3、负责梳理复杂业务流程,合理划分领域,抽象系统,提炼成中台,以提高研发效率; 4、接受高并发、海量数据的挑战,分析和发现系统的优化点,负责推动系统的性能和可用性的提升; 5、为团队引入创新的技术、创新的解决方案,用创新的思路解决问题。
更新于 2025-03-18