X

뉴스레터를 구독하세요.

분기에 한번, 핵심 소식을 전달 드립니다!

개인정보 수집 및 이용

뉴스레터 발송을 위한 최소한의 개인정보를 수집하고 이용합니다. 수집된 정보는 발송 외 다른 목적으로 이용되지 않으며, 서비스가 종료되거나 구독을 해지할 경우 즉시 파기됩니다.

Short-term Pair Programming

2007-10-02 | 개발 이야기

신입사원 OT 첫째날,
면접 시 출제되었던 문제 중 하나를 선택해 짝 프로그래밍으로 풀어보았다.

고동진/강지웅 팀, 최규동/안보람 팀

이렇게 짝을 먹고… 시작…
이전 면접시 3명은 이미 문제를 풀어 보았었기 때문에 문제에 대한 이해도는 달랐다.

주어진 시간은 1시간 20분… 꽤 어려운 문제일거란 짐작이 간다…

문제를 풀어나가는 방식과 알고리즘 선택은 두 팀이 다 비슷…

결국 짧은 시간의 짝 프로그래밍으로 알아보고자 한 건 다음의 질문들에 대한 답변

1. 만족하나요?
2. 제일 힘들었던 점 1가지는?
3. 다음번에 이런류의 문제가 나온다면 어떻게 2.번을 제거할 것인가?
4. 제일 흥미로웠던 점은?
5. 짝 프로그래밍 중 좋았던 점은?
6. 짝 프로그래밍 중 (솔직히) 거부감이 들었던 점은?
7. 퀴즈에서 제일 제거하고 싶은 부분은?
8. 상대의 스킬이 어느 정도인지 알 수 있었나요?

에 대한 각자의 생각은?

최규동
1. 만족하나요?
아니오. 변수명이라던지 사용한 알고리즘 같은 경우에 조금 더 생각해서 더 가독성 있는 변수명과 더 나은 알고리즘을 작성했어야 했는데 그러지 못한 점이 만족스럽지 못했습니다.

2. 제일 힘들었던 점 1가지는?
주어진 시간내에 프로그램을 짜야된다는 점이 가장 힘들었습니다. 시간내에 프로그램을 완성해야 한다는 압박감(?) 때문에 평소보다 생각이 나질 않아 좀 더 좋은 코드를 짜지 못한 것이 아쉬웠습니다.

3. 다음번에 이런류의 문제가 나온다면 어떻게 2.번을 제거할 것인가?
좀 더 차근 차근 생각해서 좀더 나은 코드를 짤 수 있도록 계속해서 반복 훈련 해야 될 것 같습니다.

4. 제일 흥미로웠던 점은?
문제 자체가 재미 있었고 짝 프로그래밍을 하면서 서로 의견을 교환하고 수렴하는 과정이 재미있었습니다.

5. 짝 프로그래밍 중 좋았던 점은?
서로 의견을 교환 하면서 또 다른 생각을 듣게 되어  ‘아! 이런 방법도 있구나!’ 하는 걸 배울 수 있어서 좋았습니다.

6. 짝 프로그래밍 중 (솔직히) 거부감이 들었던 점은?
처음에 제가 접근한 방식과 짝이 접근한 방식이 달랐을 때 저의 생각을 짝이 수렴해 주지 않았을 때 솔직히 거부감이 들었습니다.

7. 퀴즈에서 제일 제거하고 싶은 부분은?
자주 사용하던 개발툴이 아닌 생소한 개발툴을 써서 개발하게 되어서 평소보다 개발 속도가 저하되었던 부분이 가장 아쉬웠습니다.

8. 상대의 스킬이 어느 정도인지 알 수 있었나요?
짧은 코드 였지만 변수명, 가독성, 사용한 알고리즘 등을 보면서 상대의 스킬을 어느 정도 알 수 있었습니다.

안보람
1. 만족여부
    – 네 : 우선 회사에서는 이렇것도(짝프로그래밍/코드리뷰) 하는구나라는 작은 감동(?)과
             페어 프로그래밍에 대한 이해를 높이는 기회가 됨
             (근데 이걸 물어 본건 아니셨죠? :))
    – 아니요 : 프로그래밍에 초반에 방향을 같이 정하지 못했음

2. 제일 힘들었던점
    – 결과 : 진행 중반에 집중력을 잃음
    – 원인 :
        1. 일전 면접때 서로 같은 문제를 풀어 본터라.. 문제에 대한 이해를 어느정도 가지고 있으며,  동일한 문제에 대한 이해는 동일한 해결방법의 접근이라 생각 함.
        2. 초면이기에 서로 방향을 협의하는데 시간이 많이 걸릴것이라 단정하고 짝의 접근방식을 따르고 보조에 중점으로 프로그래밍을 진행했음
        3. 진행 중 프로그래밍 보다는 짝의 접근방식을 이해하는데 중점을 주게됨
        4. 이는(4) 짝 프로그래밍 진행 중 집중력을 잃는 원인이 됨

3. 2번의 해결안
    – 코드보다는 초반 문제 해결법에 대한 접근에 대한 서로간의 협의에 집중해야할듯
    – top down으로 접근하여 문제에 대한 접근 진행 정도를 코드상에 드러나도록 해야할듯

4. 제일 흥미로웠던 점
    – 접근방법이 달랐음

5. 좋았던점
    – 집중이 안되는 환경인데 집중도를 높일 수 있었음.

6. 거부감 들었던점
    – 없음. 재미있었음.

7. 제거 하고 싶은 점
    – 개발 환경은 셋팅 – 익숙치 않은 툴이라 툴에 집중력을 뺏김.

8. 상대 스킬을 알 수 있었나
    – 네.
    – 스킬도 스킬이지만..  문제 접근 방식이나 코딩 스타일이 다른점을 느낄수 있어 특히 좋았음.

강지웅
1. 만족하나요?
아니오
– 정확한 문제 분석 없이 코딩을 시작하게 된 이유로 인해 더 많은 시간을 소비하게 된 것과
최종 결과물을 확인하지 못한 부분이 만족스럽지 못하다.

2. 제일 힘들었던 점 1가지는?
힘든건 아니었지만 처음만난 파트너와의 커뮤니케이션이 쉽지는 않았다.

3. 다음번에 이런류의 문제가 나온다면 어떻게 2.번을 제거할 것인가?
커뮤니케이션이 원활해 진다면 주어진 시간 안에 완전한 결과물을 얻을 수 있을 것 같다.

4. 제일 흥미로웠던 점은?
같은 문제를 해결하는데 있어서 파트너가 나와는 다른 생각으로 접근하는 것을 보았을 때

5. 짝 프로그래밍 중 좋았던 점은?
고민하는 부분에 대해서 상대방이 더 빠른 이해로 설명해 주었을 때

6. 짝 프로그래밍 중 (솔직히) 거부감이 들었던 점은?
의사소통이 명확하지 못했을 때

7. 퀴즈에서 제일 제거하고 싶은 부분은?
서로를 잘 모르는 상태에서의 짝 프로그래밍은 제거되었으면 한다.
– 이유 : 서로에 대한 이해와 문제해결을 동시에 필요로 하기 때문에 더 많은 시간이 소요된다.

8. 상대의 스킬이 어느 정도인지 알 수 있었나요?
문제에 대한 이해력이 좋았고 기초가 탄탄한 것 같았다.

고동진
1. 만족하나요?
아니오. 두번째 구현인데도 제대로 완성하지 못했습니다.

2. 제일 힘들었던 점 1가지는?
초반에 설계를 잘못하여 거기에 맞추다보니 나중에는 구현이 더 힘들어졌습니다.

3. 다음번에 이런류의 문제가 나온다면 어떻게 2.번을 제거할 것인가?
초반에 바꾸기 쉬운 방향으로 설계해야겠지요.

4. 제일 흥미로웠던 점은?
짝프로그래밍을 해본다는게 꽤 괜찮았습니다.

5. 짝 프로그래밍 중 좋았던 점은?
같은 문제에 대해 다른 사람은 어떻게 생각하고 어떤 해결책을 내놓는지 알아볼 수 있습니다.

6. 짝 프로그래밍 중 (솔직히) 거부감이 들었던 점은?
나와 생각이 다른 경우 의견 조율하는 부분
>> 3표….흠…

7. 퀴즈에서 제일 제거하고 싶은 부분은?
퀴즈자체는 크게 불만이 없습니다. 키보드가 적응이 힘들다는 정도 ???

8. 상대의 스킬이 어느 정도인지 알 수 있었나요?
yes. (학교에서 같이 과제하던 사람들보다는 확실히 나은 듯합니다.)

간단한 자평

주어진 시간에 문제를 푼다는 것…이 어렵죠. 짝 프로그래밍이 한가지 일을 같이 해결하는 거지만 필요하다면 일의 단위를 쪼개는 것도 필요할 수 있습니다.

각자 “좋았던 점”은 짝 프로그래밍이 필요할 때 생각하면 될거구요.
거부감이 들었다면 그 순간 팀이 해결해야 할 일이 무엇인지 다시 한 번 생각해 보는 시간이 필요할겁니다.

(솔직히) 4명중 3명이 의견 조율에 어려움을 겪었습니다. -> 그래서 여러분들이 더 소중합니다.^^

나에게 8시간 동안에 나무를 베라고 한다면… 나는 6시간은 도끼의 날을 갈겠다.
-에이브러험 링컨-

사이냅 문서뷰어

어디서 어떻게 사용되고 있을까요?

사이냅 문서뷰어의 적용사례를 만나보세요

[개인정보 수집, 이용에 대한 동의 절차]

사이냅 문서뷰어 적용사례를 만나보세요

차원이 다른 HTML5 웹에디터

사이냅 에디터

사이냅 에디터가 어디에 활용될 수 있을까요?
다양한 적용사례를 만나보세요

[개인정보 수집, 이용에 대한 동의 절차]

한 차원 높은 HTML5 웹에디터를 만나보세요