About LINE Corp.
At 83 million domestic users, or 65% of the population, LINE is Japan’s most popular messaging application. It is also popular throughout Asia, boasting approximately 186 million users globally.
Build Reliable Systems at Scale
You’ll have the opportunity to work on systems that are both highly scalable and reliable. For example, we use Apache Kafka to process over 360 billion messages a day, while keeping the cluster’s availability nearly 100% and less than 10 milliseconds response time.
About 40% of our engineers are non-Japanese. There are teams that don’t require any Japanese abilities, and for those wanting to improve their Japanese skills, we offer Japanese lessons.
Room to Grow
We’re a fast growing organization that’s full of young, enthusiastic engineers. We offer a leveling system with both individual contributor and management tracks, so regardless of how you wish to improve your skills, there’s room for you to grow within the company.
Healthy Work/Life Balance
We offer flextime so that you can set a schedule that is best for you. We encourage our employees to take vacations, and it’s not uncommon for some employees to take off several weeks in a row.
Our response to COVID-19
In response to COVID-19, we’ve introduced a number of initiatives to support our users in Japan and around the world. These include working with Japan’s Ministry of Health, Labour and Welfare to offer remote consultations with medical professionals, and offering free one-on-one counseling for people who are suffering from anxiety and stress stemming from COVID-19.
During this crisis, we’re advising all our employees to work from home, moved to conducting recruitiment interviews over video chat, and have shifted all contracts to electronic form to allow those who handle contracts to work from the safety of their homes.
You can find more details about our initiatives in response to the spread of novel coronavirus here.
About the position
In this position, you’ll be responsible for operating and performing API/web application development work for server-side features of LINE’s services.
Our services are built on these technologies: Java, Spring Framework, RxJava2, Armeria, Nginx, MongoDB, Redis, MySQL, Elasticsearch, Prometheus, Grafana, Zipkin, Central Dogma, Ansible
External resources about the team and our services
- LINE’s New Year campaign - Taking Control of High Traffic Video - Slides
- LINT (LINE Improvement for Next Ten years) Video - Slides
- Reliability Engineering Behind The Most Trusted Kafka Platform Video - Slides
- Long road to microservices architecture at LINE messaging platform. Video - Slides
- Implementation of service mesh using Envoy and Central Dogma Slides
- Lead the design of software components and features.
- Design, develop, test, deploy, maintain and improve large-scale server-side software.
- Contribute to architectural designs which can improve the efficiency and flexibility of our services.
- Mentor and train team members on software design and coding standards.
- Work closely with other teams on the development of end-user facing web applications.
- Support the development of high quality code through active participation in code and design reviews.
- Extensive/strong capability at least one of Programming language: Java, C, C++, Scala, Erlang
- Solid knowledge and understanding of computer science (e.g. use of standard algorithms and data structures, OS, network, database) with B.S. level or equivalent experience.
- 5+ years of experience in software development, B2C services or large scale system.
- Experience developing consumer services
- Experience developing applications using Java 8+.
- System architecture and design experience including but not limited to the following topics:
- Networking (HTTP 1.1/2, TCP/IP, DNS etc.)
- Micro-services, DDD (Domain Driven Design)
- RPC (REST, Thrift, ProtoBuf, etc)
- Asynchronous I/O - MySQL(RDBMS, etc)
- NoSQL (Redis, HBase, MongoDB, Cassandra)
- Design distributed system architecture.
- Implementation of distributed transactions
- Experience using a Linux/Unix development environment.
- Experience in the coaching, management and/or leadership of a technical team.
- Open-source software development experience and/or participation in open source communities is also a plus.
- Work experience using version control systems (VCS), dependency management systems, and continuous-integration systems (CI).
- Motivation to learn Japanese.