본문 바로가기
👩‍💻 Tech Interview/└ 기술질문

[광고솔루션] 기술면접 질문 정리

by 쫄리_ 2023. 3. 30.
728x90
반응형

기술스택

JAVA
Web Service
DB
Linux
HTML, javascript, CSS

담당업무

광고 솔루션 개발업무
대용량 트래픽 서비스 개발 및 튜닝
대용량 분석 처리 시스템

 


예상인터뷰

- 애드 익스체인지(AD Exchange)
- 광고주를 위한 DSP(Demand side Platform)
- 매체를 위한 SSP(Supply side platform)

매체를 위한 플랫폼, SSP

SSP는 매체 측에서 매체의 이익을 극대화 하기 위한 플랫폼입니다. 각 매체들은 수익을 위해 가장 높은 단가의 광고를 찾고자 했습니다. 이를 위해 SSP는 여러 애드 네트워크, 애드 익스체인지, DSP를 연동하여 더 높은 광고비를 지불할 광고주를 찾을 수 있도록 돕습니다.
SSP는 유저로 인해 매체에서 노출이 발생할 때 마다 비어있는 인벤토리를 RTB경매장에 올리게 되는데요. 이를 확인한 DSP응답중 가장 높은 입찰가를 부른 광고의 요청을 수락하고 해당 광고를 매체에 게시하게 됩니다.
쉽게 말해 SSP가 경매시장의 경매인이 되고 DSP는 입잘자 역할이 되는거죠.
최대의 수익을 얻기위해 비어있는 인벤토리를 RTB 경매장으로 떠나보냅니다

AD Network를 중개하는 플랫폼,  AD Exchange

다양한 종류의 애드 네트워크가 등장함에 따라 인벤토리 수요와 공급이 불일치 하는 상황이 발생합니다. 예를 들어 모바일앱의 인벤토리를 다수 확보하고 있는 네트워크가 있는가 하면 웹사이트 위주의 인벤토리를 가지고 있는 네트워크가 있었죠. 개별 애드 네트워크로는 한계가 있었기에 자연스럽게 네트워크 끼리의 서로의 노출, 인벤토리를 거래하는 일이 생겨났습니다. 이러한 거래를 위해 애드 네트워크들을 모은 애드 익스체인지(Ad Exchange)가 등장하게 됩니다. 

애드 익스체인지는 일반적으로 거래의 효율성과 공정성을 위해 RTB(Real Time Bidding) 방식을 이용합니다. RTB란 유저가 광고에 노출될 때마다 해당 인벤토리를 경매에 부치는 방식인데요. 유저들의 노출이 발생할 때마다 실시간으로  광고주(DSP)들에게 해당 인벤토리의 구매여부를 물어봅니다. 이들은 해당 노출을 분석 후 적합하다고 판단할 경우 경매에 참여하게 됩니다. 이러한 과정은 매우 짧은 시간에 일어납니다. 경매 하나에 소요되는 시간은 100ms로 매우 빠르기 때문에 애드 익스체인지는 짧은 시간안에 수많은 트래픽을 처리할 수 있는 능력을 갖추어야 합니다.

여러 애드 네트워크들이 모인 애드 익스체인지(AD Exchange)

광고주를 위한 플랫폼, DSP와 DMP

광고주는 애드 익스체인지의 등장으로 더 쉽게 다양한 오디언스를 접할 수 있게 되었습니다. 다양한 선택지가 생겨남에 따라 광고주는 더 효율적으로 광고를 운영하고자 하는 니즈가 발생했습니다. 따라서 여러 애드 익스체인지, 애드 네트워크, SSP(Supply side platform)들을 연동하여 적합한 광고를 구매하여 최대의 효율을 낼 수 있게 돕는 플랫폼, DSP(Demand side Platform)가 등장합니다.  DSP는 앞서 언급된 RTB(Real Time Bidding)방식의 경매 과정에서 해당 매체와 오디언스에 대한 정보를 분석하여 효율을 높히고 캠페인 목표를 달성할 수 있도록 합니다. 

현재 시장에서 일반적으로 사용되는 RTB 경매 방식에는 2nd  Price 낙찰 방식이 있습니다. 2nd Price 경매방식이란 가장 높은 가격을 부른 사람이 승리하되 2등이 부른 가격을 지불하게되는 방식인데요. 일반적인 경매 방식은 서로 눈치를 보거나 담합을 하는 상황이 발생할 수 있습니다. 2nd Price 경매방식의 경우, 구매 의사 확실한 광고주가 높은 가격으로 명확한 의사표현을 하고 2등이 제시했던 가격으로 가져가게 됩니다. 이러한 방식은 광고주가 이기더라도 손해를 보는 상황을 줄이고, 자신이 생각하는 적정가격으로 구매를 할 수 있게 해주기 때문에 기존의 경매방식보다 투명합니다.

적합한 인벤토리를 찾아주는 DSP와 RTB(Real Time Bidding) 구매 방식


이처럼 DSP가 적합한 판단을 내리기 위해서는 매체와 오디언스에 데이터에 대한 분석이 중요한데요. 이러한 데이터를 제공하여 주는 것을 DMP(Data Management Platform)이라고 부릅니다. DMP의 데이터는 많이 수집될 수록 보다 정교한 타겟팅을 가능하게 합니다. DMP가 제공하는 데이터를 활용하여 광고를 거래하는 대표적인 예로 카울리의 Audience+ Targeting, 리타겟팅(Retargeting)광고를 들 수 있습니다.

참고 | https://brunch.co.kr/@cheolhwanch/12

 

 

1. 애드네트워크 (ad network)

 

광고흐름의 기본은 광고주(광고할사람) - 매체사(광고할 지면을 확보한사람) 간의 거래

그러나 이전에도 말했다시피 너무 많은 매체와 다뤄야할 데이터가 많아짐으로 일일히 변수가 발생할때 마다 수동으로 컨텍하여 관리하는데 한계가 생기게 됩니다. 매번 바뀔때마다 이거 바꿔주시고 이거는 이렇게 조작하여 송출하고 이렇게 하기엔 너무나도 귀찮은일이 아닐수 없습니다

그래서 보다 쉽게 광고를 등록/관리하고 또 송출하기 위해 과정을 편리하게 만든  애드서버가  탄생하게됩니다.

광고주쪽에서는 어떤 매체에 어떤 캠페인과 크리에이티브를 진행할지에 대한 작업이 많기 때문에 이를 쉽게 관리해줄 애드서버가 필요하며

매체사쪽에서도 광고주의 요구나 다양한 광고 데이터를 적절히 송출하기 위해서 애드서버가 필요하게 됩니다. 

이렇게 애드서버에 대한 개념을 이해했다면 이제 애드네트워크로 넘어갑니다.

지난번 이야기했듯 어떠한 상품과 경쟁업체가 많아지면 다시 한번 이들을 묶어주는 업체가 반드시 생기기 마련입니다.

광고 상품은 한가지만 있는것이 아니고 동작하는 방식도(?) 제각각입니다.

광고상품을 어떠한 광고지면에 노출하기 위해서는 반드시 각 서버간의 연동 작업이 필요하게 됩니다.

그러나 너무나 다양한 광고 상품과 지면들...

광고상품을 노출영역별로 일일히 서버를 연동하는 일이 번거로운 작업이 아닐 수 없습니다.

그래서 이를 수월하게 해결하기 위해 애드네트워크 서비스가 만들어지게 됩니다.

이러한 문제로 인해 탄생한 애드네트워크를 통하게 되면, 

이전처럼 다양한 광고주와 매체사들을 일일히 개별적으로 서버연동하지 않고 애드네트워크 하나만을 통해서 수월하게 광고를 관리할수 있게 됩니다.

이렇게 되면 귀찮은 문제들이 사라지기 때문에 인벤토리를 확보한 애드네트워크는 광고주에게 인벤토리를 손쉽게 판매할 수 있게 되며

이로인해 광고주는 다양한 매체에 광고를 집행하는것이 수월해지고 양사간에 효율적인 거래가 이뤄지게 됩니다.

 

 


2. 애드익스체인지 (ad exchange)

 

드네트워크로 인해 광고의 송출과 관리가 비교적 수월해 졌으나 뭔가 부족한 부분이 발생합니다.

매체는 항상 고정적인 트래픽을 보유하는것이 아니기 때문에, 특정 이슈로인해 특정 매체의 트래픽이 증가하게 되면 그 매체에 고정적으로 광고금액을 집행하던 광고를 제외하고는 증가된 트래픽 만큼의 추가 이익을 볼 수 없게 됩니다.

그래서 다양한 각각의 애드네트워크들을 서로 제휴해 이러한 문제점을 상호보완하기 위한 애드익스체인지라는 플랫폼이 생겨나게 됩니다.

애드익스체인지 양사간의 유연한 거래를 위해 제휴된 곳의 인벤토리들을 파악하하게 되며, 이로인해 매체사의 남는 인벤토리는 추가 집행을 원하는 광고주들의 광고를 추가집행하여 유연한 광고의 거래를 가능하게 합니다.

결국 애드네트워크간의 연동을 통하여 보다 양사에 보다 효율적인 광고집행을 가능하게 한다고 할 수 있습니다.

 

이렇게 광고상품과 매체의 다양성은 이제 광고업계의 흐름에서, 이 많은 데이터들과 기술적 문제들을 해결할 수 있는 능력을 무엇보다 중요하게 만들었습니다. 모든 것들을 연동하고 송출하는데 필요한것은 기술의 힘인셈이지요.

 

참고 | https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=syncmedia_ad&logNo=220495577218 


Java의 상속과 인터페이스의 차이점은 무엇인가요?

  • 상속은 부모 클래스의 모든 멤버 변수와 메서드를 자식 클래스가 물려받아 사용할 수 있는 것이며,
  • 인터페이스는 메서드 시그니처만을 가지고 있어 구현은 각 클래스에서 달리 구현할 수 있는 것입니다.

Web Service란 무엇이며 어떤 장단점이 있나요?

  • Web Service는 서로 다른 플랫폼과 언어에서 상호작용을 할 수 있도록 기술된 표준화된 인터페이스입니다.
  • 장점으로는 기존의 시스템과 쉽게 통합 가능하며, 플랫폼과 언어에 상관없이 사용이 가능합니다.
  • 단점으로는 추가적인 인증과 보안이 필요하며, 대량의 데이터 처리시 속도가 느릴 수 있다는 점이 있습니다.

대용량 트래픽 서비스에서 사용하는 로드밸런서에 대해 설명해주세요.

  • 로드밸런서는 서버들 사이의 트래픽을 분산시켜주는 역할을 합니다.
  • 클라이언트의 요청을 여러 서버로 분산시켜서 서버의 부하를 줄이고, 가용성을 높여주는 역할을 합니다. 대표적인 로드밸런서로는 HAProxy, Nginx, Amazon ELB 등이 있습니다.

대용량 분석 처리 시스템에서 사용하는 데이터베이스 종류는 무엇이 있나요?

  • 대용량 분석 처리 시스템에서는 주로 NoSQL 데이터베이스가 사용됩니다. 대표적으로는 HBase, Cassandra, MongoDB 등이 있으며, 대량의 데이터 처리와 분석이 필요한 시스템에서 사용됩니다.

HTML, JavaScript, CSS 각각의 역할은 무엇인가요?

  • HTML은 웹 페이지의 구조를 나타내는 마크업 언어입니다.
  • JavaScript는 클라이언트 측에서 동작하는 프로그래밍 언어로, 웹 페이지의 동적인 기능을 구현하는데 사용됩니다.
  • CSS는 스타일 시트 언어로, HTML과 같은 마크업 언어로 작성된 웹 페이지의 레이아웃과 스타일을 지정하는데 사용됩니다.

대용량 데이터 처리 시스템에서 사용되는 대표적인 분산처리 기술에는 어떤 것이 있나요?

  • 대용량 데이터 처리 시스템에서는 여러 대의 서버를 이용하여 데이터 처리를 분산시키는 기술이 사용됩니다. 이를 위해 Hadoop, Spark, Flink 등의 분산처리 프레임워크가 사용됩니다. 이러한 분산처리 기술을 이용하면 대용량의 데이터를 빠르게 처리하고 분석할 수 있으며, 안정적인 처리를 보장할 수 있습니다. 이러한 기술들은 데이터 처리 시스템에서 필수적인 기술로 각광받고 있습니다.
728x90
반응형