- Backend, Frontend, Android, iOS 포지션의 구분 없이 누구나 지원 가능합니다.
- 채널팀은 단일 스택에 종속되지 않고 빠른 속도로 익히고, 엔지니어링을 잘하는 사람들로 팀을 꾸려나가고자 합니다.
- 해당 포지션은 입사 후 Backend / Frontend / Mobile(Android/iOS) 팀 중 하나로 배치됩니다.
- 팀 배치는 프로젝트의 중요도와 상황에 따라 결정됩니다.
- 팀 배치 이후 언제든 또 다른 팀에 소속되어 새로운 프로젝트에 도전할 수 있는 기회가 있습니다.
- 채널톡이 빠르게 글로벌 제품으로 성장하면서 만나게 될 모든 소프트웨어 문제를 해결합니다
- 여러 기술에 대한 폭넓은 이해와 경험을 쌓을 수 있습니다. 다양한 팀원들과 협업 하는 과정에서 새로운 지식과 아이디어를 얻습니다. 단일 스택에 종속되지 않고 어떤 요구 사항에도 최적의 기술을 선택하는 소프트웨어 엔지니어로 거듭날 수 있습니다.
- 다양한 스택을 다루기에 하나의 문제를 다각도로 바라볼 수 있습니다. 각 스택과 프레임워크 속 고유한 도전과제는 창의적이고 유연한 사고로 이끕니다.
- 최적의 답을 찾기 위한 모든 도전이 허용됩니다. 배움을 장려하며 원하는 만큼 디깅 할 수 있습니다. 프로젝트의 목표에 맞는 최적의 기술을 선택할 수 있도록 유연성을 제공합니다.
- [Backend Engineer]
- 하루 800만명이 사용하는 국민 고객 메신저! 채널톡의 백엔드 개발을 담당합니다.
- Java, Dropwizard를 이용해 만들어진 메인 API 서버를 개발합니다.
- 가파르게 늘어나는 사용량에 처리하기 위해 기존에 구축된 시스템을 리뷰하고 좀 더 스케일하도록 재설계 합니다.
- 서버 장애를 감지하고 알림을 주는 시스템을 개발하고 장애를 처리합니다.
- AWS Lambda, Serverless와 nodejs, python, golang 등의 언어로 마이크로 서비스를 개발 합니다.
- AWS 환경안에서 ECS, Docker 및 k8s(EKS)인프라를 이용해 빌드, 디플로이, 메인터넌스를 담당합니다.
- [Frontend Engineer]
- 고객과 대화하고 비즈니스를 돕는 기능들이 있는 '데스크'를 개발합니다.
- 많은 source(REST, WebSocket, LocalStorage, ...) 로부터의 i/o를 관리하는 통합 수신함을 개발하는 경험을 합니다.
- 고객 연락처 등 대용량 데이터를 시각화하는 문제를 풀어 나갑니다.
- 복잡한 비즈니스 요구사항을 코드로 구현하기 위해 GUI 에디터 등을 개발합니다.
- 고객과 채널톡의 첫번째 접점인 '프론트'를 개발합니다.
- 수많은 환경에서 일관성 있게 동작하도록 하는 크로스브라우징에 신경씁니다.
- 고객사 웹앱의 스타일과 성능에 영향을 미치지 않도록, 가볍고 격리된 환경을 만드는 문제를 풀어 나갑니다.
- 디자인 시스템, 위지윅과 같은 core-library를 관리합니다.
- 제품 전반에 걸쳐 일관성 있는 룩앤필을 가질 수 있게 돕는 디자인 시스템을 오픈 소스로 개발합니다.
- 채팅 메시지부터 블로그 등 Rich Text까지 작성할 수 있도록 지원하는 에디터를 개발합니다.
- 대규모 프로젝트를 다수의 인원이 작업하더라도 퀄리티와 속도를 놓치지 않도록 프론트엔드 개발환경을 개선합니다.
- [Android/iOS Engineer]
- 모바일과 관련된 모든 개발을 담당합니다.
- 하루 300만명이 사용하는 국민 라이브챗! 채널톡의 모바일 플러그인(SDK)을 만드는 역할을 합니다.
- 1만 명의 매니저가 매일매일, 고객이나 팀과 대화하기 위해 사용하는 채널톡 데스크 앱을 개발합니다.
- 채널톡의 B2C 서비스, 콘텐츠와 커뮤니티를 바탕으로 채널톡 고객사의 디스커버리 문제를 해결하는 채널엑스 앱을 개발합니다.
- 안드로이드는 대표적으로 Compose, Kotlin Coroutines(+ Flow), Hilt, RxJava, Socket.IO, WebRTC 등을 사용하여 개발하고 있습니다.
- iOS는 대표적으로 SwiftUI, UIKit, Combine, RxSwift, ReSwift, Socket.IO, Tuist, Needle, WebRTC 등을 사용하여 개발하고 있습니다.
- 컴퓨터 공학 또는 관련 학과 전공
- 자료구조, 알고리즘과 관련한 지식이 깊은 분
- 팀 워크 및 커뮤니케이션 역량
- 새로운 것을 빠르게 배우고 적용시킬 수 있는 역량
- 문제가 생겼을 때 빠르게 디버깅 및 수정할 수 있는 역량
- 컴퓨터 공학 또는 관련 기술 분야에서 석사 학위 또는 박사 학위
- 우리는 소프트웨어 엔지니어링의 ‘기초’가 여전히 가장 중요하다고 믿습니다.
- 초기의 컴퓨터 공학에는 프론트엔드도, 백엔드도, 모바일도, AI도 따로 존재하지 않았습니다. 한 명의 엔지니어가 시스템 전반을 다루던 시절이 있었고, 시간이 지나며 기술이 고도화되고 역할이 분화되면서 각 영역이 전문화되었습니다.
- 하지만 그 모든 변화의 중심에는 변하지 않는 것이 있습니다. 바로 컴퓨터 공학의 기초 역량—자료구조, 알고리즘, 시스템 이해, 그리고 명확한 문제 정의 능력입니다.
- AI 기술의 발전으로 또 한 번 큰 전환기를 맞이한 지금, 오히려 이 기초에 대한 이해와 감각은 더 중요한 역할을 하게 될 거라 생각합니다.
- 우리는 이러한 기본기를 꾸준히 중요하게 바라보며, 그 가치를 공감하는 분들과 함께하고 싶습니다.
- 경력의 길고 짧음보다, 기술의 본질에 대한 태도를 더 중요하게 생각합니다.
- 일반적으로 [서류 제출] > [사전기술인터뷰(온라인)] > [1차 인터뷰] > [2차 인터뷰] > [3차 인터뷰] > [레퍼런스 체크] > [최종 합격] 순서로 진행됩니다.
- 제출하신 서류를 통해 팀에 필요한 기본적인 문제해결 역량을 가지신 분인지 확인합니다. 지금까지 진행하셨던 프로젝트들과, 도전 과제들을 어떻게 해결하셨는지 적어주시면 많은 도움이 됩니다.
- 사전기술인터뷰는 기본적인 구현능력 또는 CS 기초에 대한 테스트를 30분~45분 진행됩니다.
- 1차 인터뷰는 1시간~2시간 소요되며, PS 문제 풀이를 진행합니다. 더불어 학부 수준의 CS 지식을 물어보며 라이브 코딩테스트도 함께 진행됩니다.
- 2차 인터뷰는 1시간 30분~2시간 소요됩니다. 가장 깊게 쌓아오신 대표 분야를 주제로 기술적인 견해를 나눕니다. 서로 솔직한 질문과 답변을 나누는 시간을 갖으며 채널과 핏이 잘 맞는 분인지 확인합니다.
- 3차 인터뷰는 대표님과의 인터뷰로, 보다 깊이 있는 직무적인 이야기와 컬쳐핏을 확인합니다.
- 채용 프로세스는 유동적으로 조정될 수 있습니다.
