vivo应用软件工程师(渲染显示方向)
社招全职3年以上研发类地点:西安 | 南京 | 深圳状态:招聘
任职要求
1、计算机相关专业本科及以上学历,拥有3年以上的工作经验,有扎实的C/C++/Java编程功底,对OpenGL、Vulkan有深入了解; 2、具备SurfaceView, TextureView, GLSurfaceView等Android渲染框架使用经验,熟悉Android显示系统的架构与实现,了解SurfaceFlinger等构件; 3、熟悉各种颜色空间,颜色格式以及他们的互相转换,熟练掌握各种GPU调试工具,能处理疑难的显示问题(包括功能、性能、内存、功耗); 4、有Android系统Camera应用渲染显示技术的开发经验优先; 5、优秀的团队合作精神,高效的跨部门协调与沟通能力。
工作职责
1、开发和优化Android应用中的图形渲染显示系统,尤其是OpenGL ES在相机场景下的应用; 2、设计和实现Android显示系统模块,处理复杂的显示任务,并集成新技术和工具以增强显示效果; 3、实施图形显示性能的监测和优化,包括帧率提升、内存管理、GPU负载平衡。
包括英文材料
学历+
C+
https://www.freecodecamp.org/chinese/news/the-c-beginners-handbook/
本手册遵循二八定律。你将在 20% 的时间内学习 80% 的 C 编程语言。
https://www.youtube.com/watch?v=87SH2Cn0s9A
https://www.youtube.com/watch?v=KJgsSFOSQv0
This course will give you a full introduction into all of the core concepts in the C programming language.
https://www.youtube.com/watch?v=PaPN51Mm5qQ
In this complete C programming course, Dr. Charles Severance (aka Dr. Chuck) will help you understand computer architecture and low-level programming with the help of the classic C Programming language book written by Brian Kernighan and Dennis Ritchie.
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
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.
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-
Vulkan+
https://developer.android.com/codelabs/beginning-vulkan-on-android#0
Vulkan is the primary low-level graphics API on Android. Vulkan enables reaching higher performance for games that implement their own game engine and renderer.
https://docs.vulkan.org/tutorial/latest/00_Introduction.html
The ideas behind Vulkan are similar to those of Direct3D 12 and Metal, but Vulkan has the advantage of being fully cross-platform and allows you to develop for Windows, Linux and Android at the same time.
https://edw.is/learning-vulkan/
I learned some Vulkan and made a game engine with two small game demos in 3 months.
https://vulkan-tutorial.com/
This tutorial will teach you the basics of using the Vulkan graphics and compute API.
Android+
https://roadmap.sh/android
Step by step guide to becoming an Android developer .
https://www.youtube.com/playlist?list=PLQkwcJG4YTCSVDhww92llY3CAnc_vUhsm
相关职位
社招3年以上研发类
岗位名称:应用软件工程师(影像方向) 工作地:深圳宝安壹方 1、负责手机项目涉及到相机应用模块相关的全流程的评审,设计,开发及维护工作(包含来自于产品/项目的需求及自发的重构需求); 2、负责手机相机相关的外设(包括外置麦克风,外置补光灯,外置镜头,外置稳定器,自拍杆,外置显示屏等)开发及适配和维护工作; 3、负责当代手机相机应用体验、功能、内存、功耗、稳定性等方面的问题处理保证项目按时准入,以及用户投诉的快速响应。
实习实习生
作为计算机图形学方向的研究工程师,你可以: 1、研究几何、纹理、材质的获取、处理、表示和渲染的基础理论与算法,解决复杂对象的高效构建和逼真呈现等关键问题; 2、研究虚拟现实环境构建、绘制、显示、人机交互、增强现实、混合现实等关键技术; 3、研究异构众核并行环境下的编程语言、开发工具和常用数据结构的设计和高效实现; 4、探索可视化与数据挖掘相结合的新型可视分析的理论与算法,研究海量媒体的语义挖掘与检索的理论与方法,研发面向领域的智能信息处理和可视化分析平台。
校招应届生
作为计算机图形学方向的研究工程师,你可以: 1、研究几何、纹理、材质的获取、处理、表示和渲染的基础理论与算法,解决复杂对象的高效构建和逼真呈现等关键问题; 2、研究虚拟现实环境构建、绘制、显示、人机交互、增强现实、混合现实等关键技术; 3、研究异构众核并行环境下的编程语言、开发工具和常用数据结构的设计和高效实现; 4、探索可视化与数据挖掘相结合的新型可视分析的理论与算法,研究海量媒体的语义挖掘与检索的理论与方法,研发面向领域的智能信息处理和可视化分析平台。