Appier is a software-as-a-service (SaaS) company that uses artificial intelligence (AI) to power business decision-making. Founded in 2012 with a vision of democratizing AI, Appier’s mission is turning AI into ROI by making software intelligent. Appier now has 17 offices across APAC, Europe and U.S., and is listed on the Tokyo Stock Exchange (Ticker number: 4180). Visit www.appier.com for more information.
About the role
Software Engineer, Backend Development at Appier focus on designing the most flexible, scalable backend architecture with optimized performance to pave the engineering road of our new products.
- Developing and operate scalable, reliable and maintainable service-based softwares and related components.
- Cowork with team members to design system architecture, choose proper technologies and plan development.
- Design & develop server-side architecture & function logic of new services
- Design and maintain database schemas for new services
- Ensures the scalability of the system
- Ensure the high performance of responsiveness to requests from the front-end
- Integrate the front-end modules built by your coworkers into new services
- Responsible for laying the foundation for the platform as well as proposing solutions to ease software development, monitoring of software, etc.
- Profiling and performance tuning of critical components
- Deploy system to production and monitor service health
- Participate in idea brainstorming and contribute ideas to technology, algorithms and products
- Participate on-call rotation within Backend team to ensure product reliability and scalability
- BS/BA degree in Computer Science or related field with 3+ years experience in related industry
- Ability to build web services on Linux.
- Good at any of the listed language: Python / Scala / Go/Node.js.
- Good knowledge of Network API Design ( e.g. REST or GraphQL).
- Good understanding of any SQL/NoSQL database (MySQL / MongoDB / Redis / etc.)
- Familiar with git.
- Team player and able to work independently.
- Proactive, good interpersonal and problem-solving skill.
- MS degree in Computer Science or related field.
- Good at profiler and debugging tools.
- High performance network service on Linux.
- Design and architect large scale distributed system.
- Design and implement distributed algorithm and data structure.
- Familiar with Nginx / HAProxy.
- Familiar with operation automation tool (such as Ansible).
- Familiar with continuous integration / continuous deployment
- Familiar with monitoring and alert system (Prometheus / Nagios).
- Familiar with functional programming.
- Familiar with Amazon Web Service or Google Compute Engine.