이력서 멘토링을 인연으로 저와 멘토/멘티 관계를 맺은 유남주 님은 주니어 백엔드 개발자입니다. 어느 날 커피챗을 신청한 유남주 님이 다짜고짜 게릴라 인터뷰를 해도 되겠냐고 묻습니다. 인터뷰 받는 사람에게 주제를 알리지 않고 즉석에서 날 것 그대로 대답을 받기 위한 방식이라고 하는데, 왜 그런 인터뷰를 하는 걸까요? 별로 내키지 않아 하는 저를 유남주 님이 설득합니다. ‘스타트업 대표로서 비용을 절감하기 위한 엔지니어링적 시도’를 주제로 이야기 나누고 싶었다고 하네요. 인터뷰 방식은 긴장되지만, 주제가 흥미로웠습니다. 어디 한 번 이야기 나눠볼까요?
우리는 종종 Java 애플리케이션의 다양한 계층 간 또는 서비스 간에 데이터를 전송해야 합니다. 이를 위해 DTO(Data Transfer Object, 데이터 전송 객체)를 사용합니다. DTO는 복잡한 동작이나 로직 없이 데이터를 담기 위한 간단한 객체입니다. 이 객체의 역할은 데이터를 묶어서 필요한 곳에 전달하는 것이죠. 그런데 Java 14에서 새로운 기능인 ‘Record’가 도입되었습니다. Record는 DTO와 마찬가지로 데이터를 담는 데 초점을 맞춘 특별한 클래스 유형입니다. 중요한 차이점은 Record는 우리가 반복적으로 해야 하는 많은 작업을 자동으로 처리해 준다는 것입니다. Java가 계속 발전함에 따라 언제 DTO를 사용하고 언제 Record를 사용해야 하는지 이해하는 것이 중요합니다. 이 글에서는 DTO와 Record의 차이점을 알아보고, 특히 현대적인 Java 애플리케이션에서 어떤 것이 더 적합한지 결정하는 데 도움을 드리고자 합니다.
파이썬은 쉽고 강력한 언어로, 프로그래밍 경험이 적은 초보자부터 다양한 문제 해결을 원하는 전문가들까지 폭넓게 사용되고 있습니다. 그만큼 파이썬을 활용하는 방법도 각양각색일 텐데요. 다른 사람들은 파이썬을 어떻게 활용하고 있을까요? 파이콘 한국 2024에서는 각기 다른 배경을 가진 사람들이 모여, 자신만의 파이썬 활용법을 공유하는 세션이 진행될 예정입니다. 오늘은 D-4 파이콘 한국 2024를 앞두고 어떤 사람들이 모일지, 준비된 세션 이야기와 발표자들을 미리 만나보려고 합니다. 지난 1편에 이어 파이썬을 통해 만들어가는 다채로운 이야기에 주목해 보세요. (+ 이번 글에는 파이콘 한국 2024 후원사 티켓 증정 이벤트가 포함되어 있습니다.)
AI 봇을 이용한 자동화 공격이 늘어나며 지속적인 ‘클라우드 보안’ 관리의 필요성이 커지고 있습니다. 보안 공격은 언제, 어디서 발생할지 예측하기 어렵습니다. 어찌 보면 ‘운’에 의존하는 영역이기도 하죠. 특히 스타트업이나 중소기업의 경우, 서비스 안정성이 흔들리면 고객 이탈로 이어질 수 있어 비즈니스의 생존과도 직결될 수 있습니다. 그러나 대부분의 스타트업은 내부에 보안 전문가를 두기 어렵고, 이로 인해 보안 유지에 어려움을 겪고 있습니다. 이러한 문제를 해결하기 위해 등장한 것이 바로 SaaS 기반의 보안 플랫폼입니다. 국내 최초로 SaaS형 보안 플랫폼을 선보인 “클라우드브릭” 관계자들을 만나, 스타트업, 중소기업에서도 클라우드 보안을 잘 관리할 수 있는 방안을 들었습니다.
사람들이 콘퍼런스로 모이는 이유는 무엇일까요? 아마도 같은 관심사를 공유하고, 서로의 경험을 나누며 배울 수 있기 때문일 겁니다. 파이콘 한국 2024도 마찬가지입니다. 파이썬을 사랑하는 사람들이 한데 모여, 서로 영감을 주고받을 수 있는 곳이죠. 2014년 첫 파이콘을 시작한 이후 지속적으로 파이썬 생태계를 확장하고, 새로운 기술과 지식을 공유하고자 노력 중인데요. 특히 모든 준비 과정이 커뮤니티의 자발적인 노력으로 이루어지는 비영리 행사이지만, 국내에서 가장 큰 파이썬 행사로 명맥을 이어가고 있습니다. 그렇다면 파이콘 한국 2024는 어떻게 준비되고 있을까요? 2022년에는 고등학생으로서 키노트 발표를, 현재는 파이콘 한국 준비위원회로 활동 중인 이한결 오거나이저를 만나, 이들의 새로운 각오와 이야기를 들어봤습니다.
관계형 데이터베이스는 오랜 시간 데이터 관리의 중심에 자리 잡고 있었습니다. 그러나 인터넷과 모바일의 급격한 성장으로 대규모 비정형 데이터를 다루어야 하는 상황이 늘어났습니다. 그와 함께 RDB의 한계가 드러나기 시작했습니다. 이에 대응하여 등장한 것이 바로 NoSQL입니다. 다만 NoSQL이라는 이름으로 묶여 있는 다양한 데이터베이스는 그저 RDB의 대안이 아닙니다. 이번 글에서는 NoSQL이라는 단순한 분류를 넘어, 세분화된 데이터베이스 관리 시스템의 세계를 탐구해 보고자 합니다. 또, 이토록 다양한 DBMS를 적절히 사용하기 위해 고려할 내용 역시 살펴보겠습니다.
요즘 AI를 도입하지 않는 기업을 찾아보기 어렵습니다. 그만큼 모든 산업 분야에서 AI를 활용하여 업무 효율을 높이고, 서비스를 개선하려는 노력이 활발히 이루어지고 있습니다. 하지만 AI를 도입하여 좋은 성과를 이루어내는 것은 꽤 어려운 일입니다. 우스갯소리로 AI를 ‘돈 먹는 하마’라고 부르는 것도 사실 농담이 아닙니다. AI를 도입해 투자 수익률을 달성하지 못하는 경우가 허다하니까요. 실제로 POC 단계에서 끝내는 이유도 투자 수익률을 감당하지 못해서 끝내는 경우도 많습니다. 그렇다면 어떻게 해야 좋은 성과를 이루어 낼 수 있을까요? 그 해답은 아마 ‘MLOps’에 있을지도 모릅니다.
개발자는 소프트웨어 개발 프로젝트에서 디자이너와 협업할 일이 많습니다. 피그마(Figma)는 이러한 협업을 원활하게 해주는 툴로서 현재 다양한 UI/UX 디자인에 사용되고 있는데요. 개발자가 피그마를 활용하면, 디자인을 코드로 변환하는 작업을 더 효율적으로 할 수 있어 개발 생산성을 높일 수 있습니다. 또한 피그마는 1인 개발이나 소규모 프로젝트에서 빠르게 아이디어를 구체화할 때 유용하게 활용할 수 있는 도구이기도 합니다. 이번 글에서는 피그마의 기본 개념을 살펴보고, 개발자 관점에서 자주 사용하는 기능과 활용 팁을 정리해 보았습니다.