SK텔레콤

T월드

개발팀 리뷰

위 내용은 SK텔레콤 전 • 현 재직자의 응답 결과입니다.

기술 스택

언어

javascript

Kotlin

Java

python

프론트엔드

ReactJS

VueJS

Node.js

ExpressJS

백엔드

Spring

SpringBoot

GRPC

데이터베이스

mongodb

Elasticsearch

Redis

데브옵스

Kubernetes

Docker

Go CD

재직자가 작성한 글

profile picture

배정민

SKT 전략기획 PL

기업가치 100조 OpenAI, 싼 걸까 비싼 걸까?

뉴욕타임스 보도에 따르면 Open AI는 VC인 Thrive Capital이 주도하는 공개매수를 통해 일부 보유 주식을 매각할 예정입니다. 거래 기준가는 800억 달러($80B), 현재 환율을 고려하면 한화 약 107조 원 수준입니다. 언론에 공개된 지난해 실적(매출 20억 달러, 적자 5억 달러)를 감안하면, 멀티플은 PSR 40배 수준입니다. Open AI 직원들은 이번 거래를 통해 보유한 주식을 현금화할 수 있게 되었습니다. 비상장기업인 Open AI의 기업가치는 10개월 전에 비해 약 세 배 가량 증가했습니다. 지난해 Thrive Capital 등이 공개매수를 통해 OpenAI 주식을 매입했을 때의 가치는 약 290억 달러($29B)였습니다. 800억 달러는 얼마만큼의 규모일까요? 비상장사 기준으로는 숏폼의 강자 바이트댄스($270B), 민간 우주수송 기업 스페이스X($175B)에 이어 세 번째에 자리하는 수치입니다. 상장기업으로 폭을 넓히면 전세계 약 200위권 기업들과 비슷한 가치입니다. 우리에게 친숙한 기업들을 본다면 소프트뱅크($81B), 디아지오($82B), 미쯔비시($83B), 글락소소미스클라인($85B), 마이크론 ($87B) 정도와 유사한 수준이라고 볼 수 있습니다. 설립한 지 10년도 안 된 회사가 짧게는 40년, 길게는 150년 넘게 사업을 이어 온 글로벌 기업들과 비슷한 반열에 올라선 셈입니다. OpenAI는 지난 해 말 샘 알트만 해고로 촉발된 리더십 위기를 어느정도 수습해가고 있는 것처럼 보입니다. 바로 엊그제 텍스트를 영상으로 만들어주는 AI 도구인 Sora를 공개, 월등한 퀄리티로 시장에 충격을 안겨준 바 있습니다. 세간에서는 Open AI가 공개한 수준의 영상물을 텍스트 입력 만으로 만들어낼 수 있다면, 기존의 영상제작업계에 근본적인 변화를 가져올 것으로 기대하고 있습니다. (덕분에 Google이 얼마 전 공개한 자사의 생성형 AI 서비스 Gemini 1.5 가 약간 빛바랜 느낌도 듭니다.) 과연 OpenAI 직원들은 이번에 주식을 매각해서 현금을 손에 쥐게 될까요? 직원들이 평가하는 OpenAI의 가치가 이번 거래가보다 더 높다면 매도하지 않고 계속 보유할 것입니다. Sora가 일반인들에게 공개되고, 대중의 기대수준 이상의 성과를 보여주게 된다면 OpenAI 직원들도 지금 가치에서 섣불리(?) 주식을 던지진 않을 것 같네요.

profile picture

배정민

SKT 전략기획 PL

새로운 지식에 열광적이어야 한다

"I buy more books than I can finish. I sign up for more online courses than I can complete." 적어도 사티아 나델라랑 비슷한 면이 하나는 있네요 ?

재직자가 좋아한 글

?️MongoRepository vs MongoTemplate  |  MongoDB는 NoSQL 데이터베이스로, 그 유연성 덕분에 Spring Boot와 자주 함께 사용됩니다. Spring Boot에서는 Spring Data MongoDB를 통해 MongoDB 연동을 쉽게 할 수 있습니다. Spring Data MongoDB는 두 가지 주요 방식을 제공합니다. 바로 MongoTemplate와 MongoRepository 입니다.   이번 포스팅에서는 이 두 가지 방법을 비교하고, 어떤 상황에서 각각을 사용하는 것이 좋은지 살펴보겠습니다.   [MongoRepository] MongoRepository는 레파지토리 패턴을 기반으로 한 인터페이스입니다. 기본적인 CRUD 메서드를 자동으로 제공합니다. Spring Data JPA와 비슷하게 작동하며, MongoDB 데이터를 처리하는 데 매우 간단한 방법을 제공합니다.   장점 * 기본적인 CRUD 작업을 자동으로 처리 * 코드가 매우 간결하고 유지보수가 쉬움 * 메서드 이름만으로 커스텀 쿼리를 작성할 수 있음 (ex. findByCategory) 단점 * 복잡한 쿼리 작업에서는 제한적 * 커스터마이징이 어렵고 고급 기능을 구현하기에 한계가 있음   [MongoTemplate] MongoTemplate은 Spring의 템플릿 패턴을 사용한 MongoDB 연동 방식입니다. 더 복잡한 MongoDB 제어가 가능하며, 어려운 쿼리 작성에 적합합니다.   장점 * 복잡한 쿼리나 커스텀 작업을 더 쉽게 수행 가능 * MongoDB와의 깊이 있는 상호작용에 적합 * 더 세밀한 데이터 처리와 제어가 가능 단점 * 기본적인 CRUD 작업도 코드로 직접 작성해야 하므로 코드가 다소 복잡해짐 * 레파지토리 패턴보다 다소 비효율적일 수 있음   [MongoRepository 사용 예시] Product 엔티티 @Document(collection = "products") public class Product { @Id private String id; private String name; private String category; } ProductRepository 인터페이스 public interface ProductRepository extends MongoRepository<Product, String> { List<Product> findByCategory(String category); } MongoRepository를 확장한 ProductRepository를 정의하였습니다. CRUD 메서드는 기본으로 제공되며, 커스텀으로 findByCategory 같은 메서드를 쉽게 추가할 수 있습니다.   CRUD 작업 사용 예시 @Autowired private ProductRepository productRepository; public void addProduct(Product product) { productRepository.save(product); } public List<Product> getProductsByCategory(String category) { return productRepository.findByCategory(category); } 이처럼 MongoRepository를 사용하면 간단한 CRUD 작업을 매우 직관적으로 처리할 수 있습니다.   [MongoTemplate 사용 예시] 이번에는 같은 Product 엔티티를 사용하여 MongoTemplate을 이용한 예제를 살펴보겠습니다.   MongoTemplate으로 복잡한 쿼리 작성 @Autowired private MongoTemplate mongoTemplate; public List<Product> findProductsByCategory(String category) { Query query = new Query(); query.addCriteria(Criteria.where("category").is(category)); return mongoTemplate.find(query, Product.class); } 위 코드에서는 MongoTemplate을 사용하여 MongoDB 쿼리를 직접 사용했습니다. Criteria와 Query 객체를 이용해 더 복잡한 쿼리나 고급 기능을 쉽게 구현할 수 있습니다.   CRUD 작업 처리  public void addProduct(Product product) { mongoTemplate.save(product); } public Product getProductById(String id) { return mongoTemplate.findById(id, Product.class); } MongoTemplate을 사용하면 모든 작업을 수동으로 처리해야 하지만, 그만큼 더 세밀하게 제어할 수 있는 장점이 있습니다.   [어떤 것을 선택해야 할까?] MongoRepository를 사용해야 할 때: * 기본적인 CRUD 작업을 빠르게 처리해야 할 때 * 코드의 간결함과 유지보수의 용이함이 중요할 때 MongoTemplate을 사용해야 할 때: * 복잡한 쿼리나 트랜잭션 처리가 필요한 경우 * 데이터베이스와의 더 세밀한 상호작용이 필요할 때   [결론] MongoDB와 Spring Boot의 연동에서 MongoRepository와 MongoTemplate은 각각 다른 용도에 맞춰 설계된 도구입니다. 저는 실제 프로젝트에서 bulk upsert 기능이 필요한 상황을 겪었는데, MongoRepository에는 해당 기능이 기본적으로 제공되지 않아, 더 유연한 MongoTemplate을 사용할 수밖에 없었습니다. 물론 upsert를 여러 번 호출하는 방법도 가능하지만, 이는 비효율적이므로 MongoTemplate을 통해 간단히 처리할 수 있었습니다.   반면, 단순한 조회 작업에서는 MongoRepository를 사용했습니다. MongoTemplate보다 코드가 훨씬 깔끔하고 유지보수하기가 쉬웠기 때문입니다. 이처럼 MongoRepository는 기본적인 작업에 최적화되어 있고, MongoTemplate은 고급 작업에서 강력한 기능을 제공합니다.   결국 중요한 것은 프로젝트의 요구사항에 맞춰 이 두 방식을 적절히 선택하거나 혼합하여 사용하는 것입니다. 각 도구가 제공하는 장점을 최대한 활용해, 프로젝트에 가장 적합한 솔루션을 찾는 것이 성공적인 MongoDB 연동의 핵심입니다.

좋아요 15 저장 28

thumbnail