• 한국어
    • 日本語
    • 中文-繁體

    2022.01.03 The Originality

    Front-end Developer, Purple Platform, Hyeongeun Kim

    There is a new world in games. We experience new things there and are deeply touched by the growth that we could never experience in reality.

    A new joy can never be created on its own; it is created through combination of different experiences and passion of different people, which is channeled into new possibilities. People are gathered to create one game, and their different capabilities and passion for quality create a new game.

    We create another world, collecting pieces of different experiences.

    Diverse superiorities < The Originality >

    When I first started developing, it was starting from scratch. Developing was never easy for a music major. However, it felt very interesting and rewarding, since I could see things that I developed being materialized on the screen, and therefore, I never gave up no matter how difficult it was. The challenges in the past make what you are today. Failures would make you immune to present difficulties and give you momentum to help you continue, and eventually, they become the power for you to overcome difficulties.”

    Front-end Developer, Purple Platform, Hyeongeun Kim
    Front-end Development

    I am carrying out programming to develop a web-based client for “PURPLE”. PURPLE is a multi-platform enabling users to play NC’s game both on mobile devices and PCs regardless of time and place. The Platform Technology Division of PURPLE is composed of Web Client, Mobile Client, Live Client, Server, and Media Technology Team.

    Once back-end developers arrange the database required for web development and delivers the data, front-end developers receive the data and design and materialize the screen to be experienced by players. Web Client Team of PURPLE, the team that I belong to, is responsible for front-end development of the web-based client of PURPLE.

    PURPLE, a platform enabling game play on both mobile and PC

    PURPLE not only provides basic functions for game players, including text and voice chats, online bulletins, etc., but also embeds the functions exclusively available on the platform. For instance, it is launching functions including “Boss Timer”, managing the acquired items and boss times, “Purple On”, enabling users to play games through streaming, and other functions specialized for playing of NC’s games, including “Purple Live” and “Purple Reward”, on a step-by-step basis. Among them, I am mainly responsible for development of PURPLE’s chatting service which has started from “NCSOFT Developers Party”, NC’s conference for sharing of development knowledge, and NC’s internal services like townhall meeting. The service has been gradually sophisticated, and it now utilizes large-sized local databases of browsers. It also provides interoperability to real-time game chats, which are considered a sophisticated technology exclusively available through PURPLE.

    PURPLE has a special meaning to me, since I have participated in its development from creation of its basic structure. I feel rewarded, as the platform is seeing an increase in the number of users and is serviced in a stable manner two years after the launch.

    From applied music to programming

    I studied applied music in college. I loved music so much and was very passionate about it. However, I could not continue to pursue my musical career after developing nodules in vocal cords.

    Since then, I have experienced various paths, including the manager’s role at a private academy teaching applied music and a staff’s role in an HR team. I kept thinking about the things that I could do well and have fun. I started programming, because I wanted to develop applications on my own. It was very interesting that the apps that I developed could provide fun and convenience to people.

    Since I did not study programming at college, I needed a solid foundation and my own competitive edge. I completed all the courses required for overall service provision, including publishing (UI & UX), front-end development, and server. I developed my career as a developer in various companies and worked as a leader in multiple teams and parts. All those experiences and opportunities have led me to work at NC.

    Discovering talent through persistent efforts

    Action without hesitation

    When I was pursuing my musical career, I was not the one with super talents, but with the one that made persistent efforts. It was the same when I started the career as a developer. I always started doing things from scratch. Development was never easy, since I did not study it in college. However, it felt very interesting and rewarding, since I could see things that I developed being materialized on the screen, and therefore, I never gave up no matter how difficult it was.

    I kept trying, and my skills gradually improved. The challenges that you made in the past make what you are today. Failures would make you immune to present difficulties and give you momentum to help you continue, and eventually, they become the power for you to make challenges and to overcome difficulties.

    Therefore, you must try and execute. Whether you succeed or not is irrelevant, since you will learn something from the course of such efforts. I always remind myself that the experiences of success and failure would enable me to make new challenges.

    Various experiences lead to trustworthy results

    Before joining a game company, I experienced services in various fields, including e-commerce, B2B, O2O, ERP, finance, advertisement, edutech, and blockchain. The experiences in developing better content helped me hone skills and develop diverse perspectives.

    Also, the experiences helped me become capable of considering various experiences at the same time and develop trustworthy results. The capability for swift response towards issues comes from various experiences.

    Differentiation is enabled by the overlap between various fields

    Whether it is a language or a paradigm, I try new things that I have not experienced. Instead of becoming content after acquiring superficial knowledge, I try to take a proper grasp of them.

    If you dig deeper into a field, you will understand its multiple aspects. For instance, you will figure out that the grammatical structure of English language and the programming language structure share similar features. If you get immersed in a certain world, you will find the features that overlap with those of other areas. Once you develop a deeper insight towards those overlapping areas, you could have a wider perspective even in a new area.

    Finding an answer through looking around

    Newness comes from mimicry

    As a musician, I learned that new insights were developed from mimicry. I find a reference, copy it, and internalize it in a gradual manner. After then, I find out what my own style is. Through the course of such mimicry, I create something new.

    As a developer, my team members are one of my references. Each one of them has different strengths and lessons to be learned. If you learn from other’s strengths and apply them to your own style, you could create a new result.

    Best results come from a free environment

    Since my team members recognize one other’s capabilities and experiences, we do not refrain from expressing our thoughts and accepting other’s opinions. We freely share each other’s thoughts and opt for the best ideas.

    When you take the lead in your own work, from schedule setting to planning, realizing, testing, and completion, you should not only have a proactive attitude, but also have the sense of responsibility. Only if the entire team have such an attitude and sense of responsibility and share the same goal, they could achieve the best result.

    Taking balance between stability and future improvement

    A programmer’s ultimate goal would be to provide convenience to users. It is most important to consider experiences from the user’s perspective. Technological capability is the least that you should have, so I always try to focus on delivering user-friendly UI and UX.

    I always think about ways to maintain the current stability and to make improvement towards a better direction. I continue to research new technological trends during my free time and try to understand why it has emerged as new trends.

    A developer that is recognized for capabilities, not through a resume

    You cannot grow as a programmer if you keep using the same technology every time. Changes are equivalent to evolution. I could understand the strengths and weaknesses of each technology while reviewing a large number of them. By doing so, I could develop the capability to choose technological options that suit the situation.

    I wish to continue to be a developer that is recognized by what he can do, not by what is written on his resume. Furthermore, I want to grow PURPLE so that it could become a platform to deliver the joy of games to a larger number of people. My goal is to connect players and games in an even more special way.

    * The above presents the personal opinions of the interviewee and not the official opinions of NCSOFT.