2022.01.05 Tiếng Việt

The Originality | Lập trình viên giao diện, Nền tảng Purple (Front-end Developer, Purple Platform), Hyeongeun Kim

Mở ra thế giới mới trong game. Nơi đó, chúng ta có thể trải nghiệm được những điều mới lạ mà bản thân không bao giờ có thể cảm nhận được trong thế giới thực. Chính những cảm nhận sâu sắc ấy sẽ lay động và giúp ta trưởng thành hơn.

Những niềm vui khác biệt không thể tự nhiên mà tạo thành. Chúng được tạo ra khi những trải nghiệm và đam mê riêng của mỗi người cùng hội tụ tại một chỗ và tiềm năng mới được phát huy. Những con người tập hợp lại vì một tựa game, cùng năng lực và lòng nhiệt huyết hướng đến chất lượng, sẽ nhào nặn ra một tựa game mới.

Thu thập những mảnh ghép trải nghiệm khác nhau để hoàn thiện một thế giới khác. 
Sự nổi bật với nhiều sắc thái < THE ORIGINALITY >


NC_Originality_khg_KV

"Tôi bắt đầu nghề lập trình từ con số 0. Lĩnh vực này vốn không hề dễ dàng đối với người học chuyên ngành âm nhạc ứng dụng. Nhưng khi nhìn thấy thành quả mình tạo ra hiện trên màn hình, tôi cảm thấy rất vui nên dù khó khăn đến mấy tôi cũng không bỏ cuộc. Thử thách rốt cuộc cũng tạo nên thực tại. Thất bại giúp tăng cường sự miễn dịch và tính chịu đựng, chuyển hóa thành sức mạnh để khắc phục và thử thách lần nữa."

Lập trình viên giao diện, Nền tảng Purple (Front-end Developer, Purple Platform), Hyeongeun Kim

Lập trình giao diện (Front-end Development)
Tôi chịu trách nhiệm lập trình để phát triển web client của Purple. Purple là nền tảng đa ứng dụng cho phép bạn thưởng thức các trò chơi của NC trên cả thiết bị di động và PC bất cứ khi nào và bất cứ nơi đâu. Công nghệ nền tảng Purple chia ra thành các bộ phận: web client, mobile client, live client, máy chủ (server) và nhóm công nghệ truyền thông.

Nếu lập trình viên Back-end chuyên điều phối và xử lý các cơ sở dữ liệu cần thiết để phát triển một trang web, thì lập trình viên Front-end nhận dữ liệu, thiết kế và triển khai giao diện màn hình mà người chơi trải nghiệm. Tôi thuộc bộ phận Purple web client, chịu trách nhiệm phát triển front-end của web client cho Purple.

Purple, giải trí mọi nơi trên điện thoại thông minh và PC
Purple bao gồm các tính năng cơ bản như trò chuyện văn bản và giọng nói, bảng thông báo cộng đồng cho người chơi trò chơi..., cũng như các tính năng riêng chỉ có ở Purple. Có thể kể đến là các tính năng đặc biệt được cung cấp lần lượt trong quá trình trải nghiệm các trò chơi của NC như "Boss Timer", dùng để quản lý các vật phẩm đang có hoặc quản lý thời gian đấu boss, "Purple On" để livestream trò chơi, "Purple Live" và "Purple Reward", v.v. Trong số đó, Purple Chatting, tính năng mà tôi phụ trách chính, bắt đầu từ các dịch vụ nội bộ như nơi chia sẻ kiến thức phát triển của NC là NCDP (NCSOFT Developers Party), Town Hall nội bộ, từ đó dần dần nâng cao tính năng và sử dụng cơ sở dữ liệu nội bộ với dung lượng lớn của trình duyệt. Chúng tôi cũng xử lý lồng ghép trò chuyện trực tuyến trong trò chơi nên có thể nói đó là công nghệ tiên tiến của riêng Purple.

Đối với tôi, Purple là một nền tảng đặc biệt vì tôi đã tham gia kiến tạo ra cấu trúc từ giai đoạn đầu. Sau 2 năm ra mắt, tôi cảm thấy biết ơn vì ngày càng có nhiều người dùng và dịch vụ cũng dần đi vào ổn định.

Từ âm nhạc ứng dụng đến lập trình
Chuyên ngành đại học của tôi là âm nhạc ứng dụng. Tôi cực kì thích âm nhạc và cũng đã từng rất nhiệt huyết. Tuy nhiên, do một vài lý do cá nhân bất chợt xảy ra như u thanh quản... nên tôi không thể tiếp tục hoạt động âm nhạc nữa.

Sau đó, tôi đã thử qua nhiều con đường khác nhau từ quản lý học viện âm nhạc ứng dụng đến bộ phận nhân sự doanh nghiệp. Tôi liên tục trăn trở liệu có nghề nào có thể đem lại cho tôi hứng thứ hoặc tôi có thể làm tốt được không Dần dần, với ước muốn tự mình phát triển một ứng dụng, tôi bắt tay vào làm lập trình lần đầu tiên. Tôi cảm thấy rất hào hứng khi nghĩ đến việc các ứng dụng mình tạo ra sẽ mang lại hứng thú và tiện ích cho mọi người.

Tôi nghĩ mình không phải người trong ngành nên cần phải có nền tảng vững chắc và lợi thế cạnh tranh riêng của bản thân. Tôi đã hoàn thành tất cả các khóa học và đạt được các chứng chỉ liên quan, cần thiết cho các dịch vụ tổng thể như khóa học UI&UX, khóa học Front-end và khóa học máy chủ server. Tôi có chuyển sang học ngành Kỹ thuật máy tính giữa chừng và sau khi tốt nghiệp, tôi luôn cố gắng liên tục nâng cao năng lực cạnh tranh của mình. Tôi cũng tích lũy kinh nghiệm trong lĩnh vực lập trình tại nhiều công ty, đồng thời cũng từng đảm nhận vai trò trưởng nhóm hoặc trưởng bộ phận.Sau khi tích lũy nhiều kinh nghiệm và cơ hội, tôi đã đến NC.

NC_Originality_khg_01

Khám phá tài năng bằng cách nỗ lực bền bỉ 

Thử trước đi đã
Hồi còn theo đuổi âm nhạc, tôi thuộc tuýp người nỗ lực hơn là tài năng xuất chúng. Đối với ngành nghề lập trình này cũng vậy. Lúc nào cũng bắt đầu từ con số 0. Lĩnh vực lập trình vốn không hề dễ dàng đối với những người không chuyên. Nhưng khi nhìn thấy thành quả mình tạo ra hiện trên màn hình, tôi cảm thấy rất vui nên dù khó khăn đến mấy tôi cũng không bỏ cuộc.

Nỗ lực không ngừng giúp năng lực ngày càng nâng cao. Thử thách rốt cuộc cũng tạo nên thực tại. Thất bại giúp tăng cường sự miễn dịch và tính chịu đựng, chuyển hóa thành sức mạnh để khắc phục và thử thách lần nữa.

Vì vậy, trước hết cần phải thử thách và thực hiện trước. Dù thất bại hay thành công thì cũng sẽ học được điều gì đó. Hãy luôn ghi nhớ rằng những kinh nghiệm dù thành công hay thất bại trước đây đều khiến cho những thách thức mới càng khả thi hơn.

Kinh nghiệm đa dạng mang đến kết quả đáng tin
Trước khi đầu quân cho công ty trò chơi, tôi đã có kinh nghiệm làm dịch vụ trong nhiều lĩnh vực khác nhau như thương mại điện tử, B2B (thương mại điện tử giữa doanh nghiệp với doanh nghiệp), O2O (dịch vụ tích hợp trực tuyến/ trực tiếp), ERP (xây dựng hệ thống thông tin tích hợp trong công ty), tài chính, quảng cáo, edutech và blockchain... Những kinh nghiệm này đem lại cho tôi các kỹ năng thành thạo cũng như các góc nhìn khác nhau trong quá trình phát triển nội dung hay hơn.

Ngoài ra cũng giúp tôi lường trước nhiều tình huống cùng một lúc và tạo ra kết quả đáng tin cậy hơn. Khả năng phản ứng nhanh nhạy khi phát sinh vấn đề cũng được tích lũy từ kinh nghiệm đa dạng.

Điểm chấp nối của nhiều lĩnh vực tạo nên sự khác biệt
Tôi luôn thử sức ở nhiều lĩnh vực mới dù chưa có kinh nghiệm, cho dù đó là ngôn ngữ hay paradigm. Không phải chỉ nhìn bề ngoài mà còn cố gắng để tiếp thu một cách tường tận.

Khi muốn nghiên cứu sâu về một lĩnh vực, chúng ta phải nắm rõ được nhiều khía cạnh của lĩnh vực đó, chứ không phải chỉ một khía cạnh nhất định. Ví dụ, ta có thể biết có sự tương đồng giữa cấu trúc ngữ pháp tiếng Anh và cú pháp ngôn ngữ lập trình. Nếu bạn hoàn toàn đắm chìm trong một thế giới, bạn sẽ dễ dàng tìm thấy những khía cạnh trùng lặp với các lĩnh vực khác. Càng nhiều điểm chấp nối, bạn càng có thể nhìn xa trông rộng hơn so với người khác kể cả trong lĩnh vực mới.

NC_Originality_khg_02

Đáp án tồn tại xung quanh chúng ta 

Sự mới lạ sinh ra từ mô phỏng 
Một trong những điều tôi học được khi làm âm nhạc là những ý tưởng mới được sinh ra từ sự mô phỏng. Tìm kiếm tài liệu tham khảo, lần mò theo đó và dần dần biến nó thành của riêng mình. Sau đó, bạn sẽ biết được phong cách riêng của bản thân là gì. Thông qua quá trình đó, bạn sẽ tìm thấy điều mới mẻ.

Là một lập trình viên, một trong những nguồn tham khảo của tôi là các thành viên trong nhóm. Từng người từng người họ đều có những điểm mạnh và điều đáng để học hỏi khác nhau. Học hỏi điểm mạnh của người khác và áp dụng chúng vào phong cách của riêng bạn có thể tạo ra kết quả mới.

Thành quả tối ưu trong bầu không khí tự do  
Đội chúng tôi luôn tôn trọng và công nhận năng lực, kinh nghiệm của nhau nên không hề ngần ngại phát biểu và tiếp thu ý kiến. Mỗi người có thể tự do thoải mái chia sẻ suy nghĩ của mình và điều đó giúp chúng tôi chọn lọc ý tưởng tốt hơn.

Khi bạn làm việc độc lập và tự do, từ việc lên lịch trình, đến lập kế hoạch, thực hiện, kiểm tra và hoàn thành, thái độ tích cực là điều cơ bản, tiếp đến là cũng phải có trách nhiệm nữa. Kết quả tốt nhất sẽ đến khi tất cả các thành viên trong nhóm cùng cố gắng tiến về phía trước với thái độ và trách nhiệm này.

Cân bằng giữa ổn định và cải thiện trong tương lai 
Mục tiêu của lập trình viên là mang lại tiện ích cho người dùng. Điều quan trọng hơn tất thảy là nhìn nó dưới góc độ của người dùng. Với quan niệm khả năng kỹ thuật là nền tảng, chúng tôi luôn tập trung vào UI (giao diện người dùng) và UX (trải nghiệm người dùng) thân thiện với người dùng.

Vừa duy trì sự ổn định hiện tại, đồng thời chúng tôi cũng không ngừng suy nghĩ về những điểm cần cải thiện theo hướng tốt hơn. Ngoài công việc, tôi liên tục nghiên cứu các xu hướng công nghệ, cố gắng tìm hiểu lý do vì sao kỹ thuật đó lại trở thành xu hướng. 

NC_Originality_khg_03
Nhà phát triển được công nhận bởi thực lực hơn là tuổi nghề  
Nếu bạn sử dụng cùng một kỹ thuật mỗi khi lập trình, bạn sẽ không thể tiến bộ được. Suy cho cùng, thay đổi cũng giống như sự tiến hóa. Trong quá trình tiếp cận với nhiều công nghệ khác nhau, tôi cũng được biết ưu và nhược điểm của từng loại. Từ đó, tôi dần có con mắt tinh tường trong việc lựa chọn đúng loại kỹ thuật phù hợp.

Cho tới bây giờ, vẫn luôn như thế, tôi muốn trở thành một lập trình viên công nhận về thực lực hơn là tuổi nghề của mình. Hơn nữa, tôi muốn phát triển Purple trở thành một nền tảng mang lại niềm vui từ trò chơi giải trí cho nhiều người hơn nữa. Mục tiêu của tôi là kết nối người chơi và trò chơi theo một cách đặc biệt hơn.

* Những nội dung được đề cập trong bài phỏng vấn này là quan điểm cá nhân của người được phỏng vấn và không phải là tuyên bố chính thức của NCSOFT.

TOP