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 engineers at Appier build a wide range of platforms and services that interconnect data and AI with our customers and users. As a Senior Software Engineer, Backend Development, you will design and build scalable and performant backend architecture, own and drive the technical roadmap for sizable projects or services, mentor junior engineers, and facilitate high performance agile teams collaborating with cross-functional teams.
- Key owner of sizable engineering projects and services
- Lead system designs and provide technical guidance to team members.
- Mentor engineers in cross-team development processes.
- Lead code reviews to ensure high quality coding standards
- Facilitate agile process collaborating with cross-functional teams.
- Initiate and lead team-level technical, process and growth initiatives
- Continuously improve the system's observability, incident management, DevOps and production operational SOPs.
- Develop and operate scalable, reliable and maintainable service-based softwares and related components.
- 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
- 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
- 5+ years of experience in software development
- Leadership experiences such as mentoring junior engineers, facilitating an agile process.
- Ability to build web services on Linux.
- Proficient in one or more of the following languages: Python/Scala/Go/Java/C++
- 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.
- Familiar with AWS, GCP or Azure.
- Proactive, good interpersonal and problem-solving skills.
- BS/MS degree in Computer Science or related field.
- Technical leadership experiences
- Good at profiling and debugging tools.
- High performance network service on Linux.
- Design and architect large scale distributed systems.
- Design and implement distributed algorithms and data structure.
- Expert in some of the following CS Domains:
- Nginx / HAProxy.
- Operation automation tool (such as Ansible).
- Continuous integration / continuous deployment
- Monitoring and alert system (Prometheus / Nagios).
- Functional programming.
- Data Intensive Application Design.