As a Senior/Lead Software Engineer, you will be facing different challenges within distributed, high concurrency, multi-threaded systems. You will be applying different kinds of distributed technologies to provide highly scalable service. You will be:
1. Deeply involved in the business and independently undertake the realization of business requirements, including writing technical solutions, system design, and coordinating multi-party resources and building highly scalable services to serve billions of online requests every day.
2. Work closely with data scientists to produce machine learning models for algorithm scenarios, and customize machine learning models to suit the project performance requirements.
3. Build data pipelines using big data tools to ensure timely data delivery for your projects, including feature data processing pipeline, graph data processing pipeline, and algorithm data processing pipeline.
1. Bachelor degree or above, 2 or more years using one or more languages in JAVA, C/C ++, with background development experience under Linux system.
2. Familiar with network programming, multi-threaded programming, high concurrency technology, and have working experience with the architecture design of large-scale systems.
3. Hands-on experience on RPC, Spring Boot framework, Hibernate, or MyBatis.
4. Familiar with Hadoop/HBase/Flink/Spark and other open-source big data technologies, those with experience in big data engineering, graph database, open-source community development are preferred.
5. Have a good sense of teamwork, passion for technology, and dare to face various technical challenges.
6. Experience with an international background is preferred.