Java Backend Engineer
About Marin software, Sr. Platform Java Backend Engineering
Our platform engineering team is tasked for building and maintaining a massive distributed system which innovates and supports entire Marin applications and products. We focus on speed, stability, scalability and security of platform performance while facilitating big data technologies to solve complex challenges from different engineering teams.
About The Team and Marin:
We are maintaining current large-scale platform technology solutions while defining the next generation of OLTP and OLAP systems. We are a fast-paced, agile and innovative team. We work closely with different engineering development and operation teams and implement technologies to enable features for our business.
Marin publisher management team takes care of managing publisher objects by creating micro services and spark based frameworks for syncing, editing, processing and storing the dataset.
As part of this role, you would be owning, enhancing and building features to manage publisher objects. In this role, you would be working with Java based micro services, Spark-Scala based backend data processing frameworks, Oozie, Hadoop, HBase, Phoenix, Yarn, Mysql.
Responsibilities:
- Enhance and maintain Java based publisher management micro services
- Maintain and enhance backend Spark-Scala, Kafka based backend content processing frameworks
- Deliver solid production level code with minimal bugs and great code quality.
- Work with product managers, and cross team owners to refine requirements and translate product requirements into technical implementation
- Write unit tests to test your code
- Debug production issues and provide fixes
Requirements:
- 8+ years relevant Java software development experiencewith CS equivalent above bachelor degree
- Object oriented programming in Java and system design skills
- Worked with Java REST micro services at production level, and with Spark-Scala based backend processing systems.
- Passionate to work with large scale data processing systems and services
- Strive to achieve excellence through code quality, delivery, performance and maintenance
- Collaborate within the team and cross team members
- Nice to have : Experience with ad-tech experience, Oozie, HBase, Phoenix, Yarn, MySQL.
我们的平台工程团队的任务是构建和维护一个大规模的分布式系统,该系统创新并支持整个Marin的应用程序和产品。我们专注于平台性能的速度,稳定性、可扩展性和安全性,同时利用大数据技术解决来自不同工程团队的复杂挑战。
我们正在维护当前的大规模平台技术解决方案,同时界定下一代OLTP和OLAP系统。我们是一个快节奏、敏捷和创新的团队。我们与不同的工程开发和运维团队密切合作,并实施技术,为我们的业务提供功能。
作为此角色的一部分,您将拥有、扩展和构建管理发布者对象的功能。在这个角色中,您将使用基于Java的微服务、基于Spark Scala的后端数据处理框架、Oozie、Hadoop、HBase、Phoenix、Yarn和MySQL。
工作职责:
- 扩展并维护基于Java的publisher的微服务
- 维护和扩展后端Spark,Scala和基于Kafka的后端内容处理框架
- 以最少的错误和出色的代码质量交付可靠的生产级代码
- 与产品经理和跨团队所有者合作,细化需求并将产品需求转化为技术实现
- 编写单元测试以测试代码
- 调试生产问题并提供修复
职位要求:
- 英语口语流利
- 8年以上Java软件开发经验,全日制统招计算机相关专业本科以上学历
- 拥有丰富的Java面向对象编程和系统设计技能
- 有基于Java REST微服务和Spark Scala处理后端系统经验
- 熟悉大规模数据处理系统和服务
- 努力通过高质量代码、最优性能和维护实现产品最优交付
- 有良好的沟通能力与团队内部和跨团队成员协作
- 有广告软件行业技术经验,Oozie,HBase,Phoenix,Yarn,MySQL优先考虑
中国总部在上海,可以远程在家办公,感兴趣的朋友可以发简历到jnliu@marinsoftware.com。