- 現어비스 대표 및 리드개발자
- 前 네이버 개발자
- 5년차 알고리즘 강사(네이버 / 카카오 / 라인 / 삼성 코딩테스트합격자 배출)
- 19, 20 IT 대기업 코딩테스트 합격자(All Solved)
- 2024 Meta HackerCup 알고리즘 대회 R1 상위 12%
- 자바스크립트 테스트 프레임워크 Mocha.js contributor
- 저서 《 면접을 위한 CS전공지식노트 》 2022 / 국내IT도서 1위 베스트 셀러
- 저서 《 실시간 모니터링 시스템을 만들면서 정복하는 MEVN》 2021 / 국내IT도서 63위 베스트셀러
🚀 개발자 멘토링 by 큰돌
네이버 출신 개발자 · 스타트업 CEO · 『면접을 위한 CS전공지식노트』 저자
포트폴리오 첨삭 + 코드 리뷰 한 번으로 취업 경쟁력 200% 상승!
👨🏫 멘토 소개
현) AI 핀테크 스타트업 어비스(AVISS) 대표
전) 네이버 개발자, 공군 기상체계개발계획 팀장
저서 『면접을 위한 CS전공지식노트』(IT 분야 1위), 『MEVN 실시간 모니터링 시스템』
알고리즘 실력 백준 상위 0.1%
수상 카카오프론트엔드챌린지 6위, 스타트업 해커톤 1위, 공군/육군 개발 표창 다수
강의 인프런 베스트셀러 ‘10주 완성 C++ 코딩테스트’, ‘CS지식의 정석’
유튜브 큰돌의 터전 채널 운영 (IT/개발 취업 콘텐츠)
실제 네카라쿠배 취업/이직 성공 사례 수십 건, 데이터 기반 피드백 제공
🎯 멘토링 포커스
분야 | 제공 내용 |
---|---|
포트폴리오 첨삭 | 기획 → 설계 → 구현 → README까지 전 과정 피드백GitHub/블로그 정리 가이드, 프로젝트 스토리텔링 컨설팅 |
코드 리뷰 | 실무 수준 코드 리뷰, 성능 최적화 |
면접 준비 | CS 전공지식 압축 정리, 예상 질문 및 꼬리질문 피드백 |
커리어 전략 | 신입/이직 전략, 부트캠프 이후 로드맵 설계 |
🔥 이런 분께 추천해요
🧑💻 포트폴리오를 깔끔하게 정리하고 싶은 분
🎯 코딩테스트 합격 이후 면접 준비가 막막한 분
🚀 스타트업/빅테크로 이직을 꿈꾸는 개발자
🏆 실력 있는 멘토에게 코드 품질/아키텍처 피드백 받고 싶은 분
- 부트캠프에 대해 고민이 있는 분
📈 진행 방식
사전 설문 – 현재 상황 & 목표 파악
1:1 온라인 세션 – 포트폴리오/코드 실시간 피드백
후속 가이드 – 개선 방향, 추가 학습 자료 제공
강의
수강평
- 10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
- CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
- CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조
게시글
질문&답변
3-A 질문있습니다.
안녕하세요 원재님 ㅎㅎ코드 깔끔하고 좋습니다. 다만, ret을 기반으로 최소값을 찾았다면 -> 더이상 최소값을 찾지 않게 가지치기만 넣으면 더 좋을 것 같습니다. 감사합니다.
- 0
- 2
- 16
질문&답변
7-L 질문드립니다.
안녕하세요 ㅎㅎ 잘 하셨네요 ㅎㅎ문득 문제를 풀면서 DP의 경우, 재귀방식의 top-down이 보통 취준 코딩테스트에서 시간복잡도에는 걸리는 케이스도 있을지 궁금합니다.-> 드물지만 재귀호출이 너무 많을 때 for문 기반의 방식보다 시간소모가 더 커서 걸리기도 합니다. 감사합니다.
- 0
- 2
- 11
질문&답변
6-C 질문
안녕하세요 ㅎㅎ정확히 M번을 맞추기 위해서 남은 금액이 그날 사용할 금액보다 많더라도 남은 금액은 통장에 집어넣고 다시 K원을 인출할 수 있다.-> 문제 지문을 보면 다음과 같이 M번을 맞추기 위해서 입금, 인출을 맞출 수 있다고 되어있습니다. 이 때문에 cnt else{ r = mid-1; answer = min(answer, mid); }
- 0
- 2
- 22
질문&답변
3주차 수업 질문있습니다.
안녕하세요 원재님 ㅎㅎ네 저렇게 해도 무방합니다. 다만, 가지치기 부분도 넣으면 더 좋습니다. ㅎㅎ감사합니다.
- 0
- 1
- 14
질문&답변
3주차 수업 질문있습니다.
안녕하세요 원재님 ㅎㅎ 먼저 find의 종류는 2가지입니다. ① std::find() 모든 순차 컨테이너(vector, list, deque, array 등)이터레이터(iterator)② container.find() 각 컨테이너의 멤버 함수map, set, unordered_map, unordered_set, string 등 컨테이너에 따라 다름 find의 경우.#include #include #include using namespace std; int main() { vector v = {1, 2, 3, 4, 5}; auto it = find(v.begin(), v.end(), 3); if (it != v.end()) cout std::find(시작, 끝, 값)값이 있으면 이터레이터 반환,없으면 컨테이너의 .end() 반환선형 탐색이라 시간복잡도 O(n)vector, deque, list, array 에서 보통 쓰입니다. map.find(), set.find() #include #include using namespace std; int main() { map m; m["apple"] = 5; m["banana"] = 3; auto it = m.find("apple"); if (it != m.end()) cout second map.find(key)키(key) 로 빠르게 탐색 (이진 트리 또는 해시)반환값:찾으면 해당 key를 가리키는 이터레이터못 찾으면 m.end() string.find() #include #include using namespace std; int main() { string s = "hello666world"; size_t pos = s.find("666"); if (pos != string::npos) cout string.find(substring)찾으면 해당 시작 인덱스(size_t) 반환못 찾으면 string::npos (== -1) 반환npos는 “찾지 못했다”는 의미의 상수string::npos는 문자열 전용값입니다. 정리하자면, vector 등에서 find() 를 쓰거나 map, set에서 .find()를 쓸 수 있고 반환값은 이터레이터입니다. 그리고 문자열에서 .find()를 쓸 수 있는데 이 때 index 반환, 실패 시 npos 라는점이 다릅니다. 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 23
질문&답변
6-C 질문
안녕하세요 너무님 ㅎㅎ그래서 혹시나 cnt > m | 나머지로 나누니 통과했는데, 문-> 이 코드도 공유부탁드립니다.
- 0
- 2
- 22
질문&답변
2-R 질문있습니다.
안녕하세요 원재님 ㅎㅎ저의 경우는 문제에서 입력에서 0번 노드부터 주어진다고 하여 따로 root노드를 저장하지 않고 무조건 0번부터 루트 노드라고 생각하고 풀었습니다.-> 이거는... 이 문제 테케가 좀 미흡한 것 같습니다. 원래 이문제는 0번노드가 무조건 root가 아니기 때문에 이렇게 코드 짜면 반례에 막히는게 정상입니다. 저의 코드는 어떤가요?-> 매번 find를 하는점이 비효율적이지만 O(N) 로직 자체는 좋습니다. 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 19
질문&답변
2-S 질문있습니다.
안녕하세요 원재님 ㅎㅎ저의 코드는 순수 비교하면서 이전에 큰돌님이 말씀해 주신 prev를 사용해서 구축했습니다. 저의 코드는 어떤가요?-> 너무 좋네요 ㅎㅎ자식 수를 판단하는 f를 기반으로 int f(int b){ visited[b] = 1; int cnt = 0; cnt++; if(v[b].size() == 0) return cnt; for(auto a : v[b]) { if(visited[a] == 1) continue; cnt += f(a); } return cnt; } 대소비교 해서 ret에 넣는 것 까지... 정말 깔끔하고 좋습니다. ㅎㅎ 그래도 수업에서 알려주시는 걸 사용하려고 하는데...ㅎㅎ-> 이것도 좋은데 더 나은 방법이 있거나 깔삼하게 하는 방법있으면 그렇게 하셔도 무방합니다. 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 14
질문&답변
2-Q 질문있습니다.
안녕하세요 원재님 ㅎㅎ사실 이 치즈문제는 굉장히 효율적으로 푸는 방법이 있습니다. 큐 2개를 사용해서 치즈가 녹은 해당 영역부터 다시 탐색을 시작하는 것이죠. 이부분을 보시면 계속해서 초기화 -> 다시 처음 탐색 시점 부터 탐색을 하기 때문에 효율적이지는 않습니다. *물론 제 코드도 그러한데 이건 난이도 때문에 그렇게 했습니다. 3주차 때 플루드필을 배우면서 보다 효율적으로 탐색하는 것을 배우니 그 때 한번 그걸 치즈에 적용해보시는것도 좋을 것 같습니다. while(true){ memset(visited, 0, sizeof(visited)); DFS(0,0); ret = chck(); 추석 잘보내세요 ㅎ 또 질문 있으시면 언제든지 질문 부탁드립니다.좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)감사합니다.강사 큰돌 올림.
- 0
- 2
- 22
질문&답변
제가 문제를 이해한 것인지 확인 부탁드립니다.
안녕하세요 ㅎㅎ네 맞습니다.
- 0
- 2
- 17