Meet the Global LINERS
Minjeong Kim / Database Administration / Korea
Minjeong joined LINE Corp. (Japan) in 2016 and worked there for two years before returning to LINE Plus (Korea) in 2018. She has played an active role as a database administrator who manages and operates databases for both offices. As someone who has spent significant time in both the Korea and Japan offices, let’s see what Minjeong has to say about LINE!
A quick three-line summary
- Minjeong is in charge of database administrative work.
- LINE STYLE of Minjeong is “1% problem-finding, 99% solution-making!”
- LINE offers a work environment based on autonomy!
Q Please tell us about your work as a database administrator.
The database department operates a variety of DBMS(Database Management Systems), including MySQL, Redis, and Mongo DB, and is responsible for managing and providing data to meet the requirements of many LINE services. All of the data at LINE is largely managed and operated by an integrated department, while each country conducts their own tasks to ensure efficient project operation. My primary job is to be in charge of all activities relating to data processing and operation during the service lifetime on MySQL. Because there are hundreds of services that use MySQL on the LINE Platform, it is difficult for me to handle every task by myself, so I share my tasks with other DBAs (Database Administrators). When a product manager requests a DB server, we provide sizing, model inspection, query inspection, and monitoring. Since our department is in charge of operations, my job requires me to focus on operations, but I also play an active role in planning new projects. We set the order of operations within the team and, when it is not my turn, I create automation tools through R&D and research new technologies. In addition, I upgrade MySQL for semi-automation and try to come up with and enforce measures to upgrade data backup. Recently, I participated in the development of the cloud DB service for Verda, LINE's own cloud service, and came up with ideas for how data should be provided and on which features, starting from the planning stage, and applied these ideas to the actual system.
Q What part of your work do you find interesting?
It may sound unusual, but I find migration interesting. Migration is the process of transferring data to other equipment, and because it is such a pain, many people try to avoid it, however, it's also a very important and necessary task. If old equipment is used, even a well-functioning service risks hardware failure, and new and efficient features sometimes do not work on earlier versions of MySQL. By migrating data to a new server and upgrading the version, new and efficient features become available to ensure system stability. Having done this a few times now, I feel a sense of satisfaction, as if I am introducing a new home for the data. Since a new version is available, I also feel a sense of relief as there shouldn’t be any issues for the next few years. I also have fun through little achievements. When doing operations work, which is very repetitive, I find it entertaining to tune a query that takes 2 seconds and speed it up so it takes only 0.2 seconds, or do some troubleshooting, or reduce repetitive work by introducing automation tools. Also, as LINE has a whole variety of global services, it is great to have a job that’s never boring. An ordinary company tends to operate one specialized service, like shopping or games, but at LINE, we do all kinds of services — shopping, games, fintech, blockchain and more — in a global environment, so I’m always growing and learning.
Q Is there anything you consider to be particularly important in terms of data management?
I consider data stability the number one priority. As an operational support department, we always strive to create a robust system. We make sure that every piece of data is well preserved and build a stable environment that allows anyone to quickly access the data they require when they need it. We also back up the data to enable its recovery in case of emergency and build a DR(Disaster Recovery) environment. Performance and stability may seem to be in a trade-off relationship with each other, but we work hard to identify service characteristics and requirements to achieve both objectives at the same time as much as we can and identify which of the two is more important to find optimal solutions.
Challenges and failures
Q Things don’t always go the way we planned. Can you tell us about a failure you’ve faced?
I wouldn’t call this a “failure” exactly, but a change in the environment in the middle of a project led the development period to more than double. When we were building a DB service on a private cloud service, and we began with the plan to build the DB in a Kubernetes environment. But, during the project, additional development was required to support a VM environment as well. Kubernetes had the advantage of being able to fully virtualize the environment and easily operate thousands of DB resources, and because each service has different requirements for the product DB, we concluded that it would be difficult with Kubernets alone. Comparing the two environments offered me an opportunity to learn more about these infrastructure systems.
What do you need for success?
Q What kinds of capabilities do you believe you need to perform well in your work?
I believe that it is important to have the ability to communicate, as well as to proactively identify and deal with problems. First, it’s really important to have the mindset of a private investigator, so you can really identify issues. We need to be able to analyze a phenomenon and track down the criminal. If an issue occurs on the DB, we need to monitor the traces and logs of the issue and monitor the surrounding resources as well as the DB to identify the cause of the issue, find the associated risks, and predict whether it will occur again. The LINE STYLE item that I work on with special attention is, “1% problem-finding, 99% solution-making.” When you’re troubleshooting, you really need to come up with measures to prevent a problem’s recurrence or find a solution. Whenever any inconvenience arises during DB operations, we try to come up with measures to automate the task and find ways to improve the issue to put the measures into action. Also, when we detect a issue on one DB, it is important to check whether the same phenomenon can be found in other services, and if necessary, we need to modify the standards for all services to prevent further issues. I believe that the capability to communicate is just as important. We provide support for service engineers, responding to their requests and answering their inquiries from the perspective of DB experts. As the DBA (Database Administrator) of LINE handles a wide variety of services, each development team for each service has different processes and their degrees of understanding of the DB vary greatly. To understand and respond to different requirements, you need to communicate clearly and gently. Negative talk and being bossy can be really upset people and get in the way, so we try to keep things positive. However, you still need to be clear about what you need because ambiguity can undermine service stability and give rise to failures, so we try hard to strike a balance.
Special experiences at LINE
Q Are there any aspects of LINE’s culture that you find unique and interesting?
Our workplace culture has a high degree of autonomy – the department lays out an annual plan at the beginning of each year, and each of us has to figure out what we’re going to do. We decide and share what kind of work we have to do and would like to do. Although the department supervises everything and sets priorities, our autonomy is largely respected. Therefore, this position is ideal for someone who has interests in many different fields and you’ll be supported as you try different things. In terms of benefits, I’m quite proud of our flexible work system. Since we are an operations department, we often have to work early in the morning or late at night. But with the LINE Smart Work System, night work is recognized as special working hours, so working then means we can work fewer hours on other days, giving us the freedom to adjust our schedule.
Q Was there anything you found difficult to adapt to?
As we have DB staff in several countries, we have to constantly discuss the technologies and standards and share our points of view. Although our translation service and translation bots are good, we sometimes experienced a few language problems. However, since a virtual group that transcends national borders was created to tackle such issues, such difficulties has been reduced significantly as we can now communicate with each other effectively, whenever we need to.
Q Can you leave a few final words for those who may be interested in your position?
The members in our department have very diverse backgrounds. Some are experts in MySQL operations, while others are proficient at all DBMS. There is someone who is great at modeling and query tuning, while one of our new super employees offers the existing members new things to learn each day. Everyone has a variety of backgrounds and talents, but we emphasize a cooperative approach to our work, and everyone gets along well. I believe the key to maintaining a good team spirit is focusing on positivity. It would be great if our new hires are also able to bring a similar type of optimism. It’s also great when people bring plenty of curiosity — too often, people lose that sense of curiosity as they become more senior in an organization, and begin to accept problems. But we tell everyone to guard against getting complacent like that. Often new employees can offer the best new insights! If you’re the kind of person who likes to grow through positivity, please come join LINE's DB department!