Vincent Job Manager

Naver ClovaAI, 2018. 11. ~ 2019. 2.

Project Summary

This project was conducted during the Naver ClovaAI internship period. Vincent is a project that generates advertisement images based on templates and predicts CTR using AI. I developed the job manager module of it which receives user requests, calculates combinations of possible images and manages the statuses of jobs.

The most complicated thing was implementing the combination calculation part. I can’t tell every details but it consists of lots of steps. And sometimes there were more than millions of possible combinations. Since igh performance was required to ensure system reliability, I designed a pipeline using golang concurrency pattern.

vincent-job-manager

First, I split the overall combination calculation process into two stage. Steps that require many computations were processed concurrently by multiple goroutines. All steps were connected into a pipeline. In this way, I could achieve performance requirments. (1 million combinations within 1 minute)

Role

Tech Stack

Results