개발자와의 협업
개발자와 일 잘하는 법 : 언어가 아니라 로직으로 말하라
개발자와 소통할 때 중요한 것
✔️입력과 출력을 명확히 하기
개발자는 어떤 데이터가 들어와서(입력) 어떤 결과가 나가야 하는 지(출력)을 명확히 알고 싶어한다.
회원가입 기능 > 사용자가 이메일, 비밀번호, 닉네임을 입력하면 데이터 베이스에 사용자정보가 저장되고 환영 메시지와 함께 메인페이지로 이동하는 기능
✔️조건과 예외 상황을 명시하기
개발자는 정상적인 상황뿐만 아니라 모든 예외상황에 대한 처리방법을 알아야 코딩할 수 있다.
로그인 기능 요청할 때 성공케이스만이 아니라 비밀번호가 틀렸을 때, 존재하지 않은 계정일 때, 서버 오류가 발생했을 때 등의 예외상황과 각 각의 처리방법을 함께 제시
✔️의사코드(Pseudo Code)방식을 활용
논리적 흐름을 단계별로 표현하는 방식
IF 사용자가 로그인 버튼을 클릭했을 때
IF 이메일 형식이 올바르다면
IF 비밀번호가 6자리 이상이라면
서버에 로그인 요청 전성
IF 인증 성공
메인 페이지로 이동
Else
"로그인 정보가 올바르지 않습니다" 메시지 표시
Else
"올바른 이메일 형식이 아닙니다" 메시지 표시
> 개발자가 구현해야 할 로직을 명확히 이해할 수 있는 방식
✔️우선순위 명확히
어떤 기능이 핵심이고 어떤 기능이 나중에 추가해도 되는지를 명확히 알려줘야 한다.
- Must Have(필수)
- Should Have(중요)
- Could Have(선택사항)
으로 구분하여 제시하는 것이 효과적
✔️개발자의 피드백을 적극적으로 수용하는 자세 필요
개발자가 기능구현하기 어렵다. 이렇게 하는 것이 더 효율적이라고 말할 때 이유를 들어보고 대안을 찾는 것이 좋다.
✔️개발자와 관계에서 가장 중요한 것은 상호 존중이다.
기획자와 개발자는 서로 다른 전문성을 가진 협력자다.
기획자가 사용자가 비즈니스 관점에서 전문성을 가지고 있듯이, 개발자는 기술과 구현 관점에서 전문성을 가지고 있다.
개발자의 세계 : 수학적 사고와 시간복잡도
개발자의 사고방식에서 가장 중요한 개념
▪️시간복잡도(Time Complexity)
특정 기능을 수행하는 데 필요한 시간이 데이터 크기에 따라 어떻게 증가하는 지를 나타내는 개념이다.
ex. 사용자가 100명일 때는 0.1초만 걸리던 검색 기능이 사용자가 10만명으로 늘어나면 몇분 걸릴 수도 있다.
이런 관점에서 개발자는 항상 "확장성"을 고려한다.
▪️메모리 효율성
개발자는 수천개의 상품 이미지와 정보를 동시에 로드했을 떄 발생할 메모리 부담을 고려한다.
특히 모바일 환경에서는 메모리 제약이 더욱 심각하다.
▪️재사용성
한 번 만든 기능을 다른 곳에서도 활용할 수 있도록 설계하려고한다.
전체 시스템의 일관성과 유지보수성을 고려한 전문적인 판단이다.
▪️의존성(Dependency)
새로운 기능을 추가할 때 기존 기능에 영향을 주지 않도록 하는 것이 중요하다.
▪️에러처리
사용자가 예상과 다른 행동을 했을 때 네트워크가 불안정할 때, 서버에 문제가 생겼을 때 모든 예외 상황을 고려해야한다.
▪️성능 최적화
같은 결과를 얻더라도 더 빠르고 효율적인 방법이 있다면 그것을 선택하려고 한다.
개발자는 미래의 확장성과 성능을 고려한 선택을 하고 있는 것이다.
▪️테스트에 대한 집착
좋은 개발자일수록 자신이 작성한 코드가 다양한 상황에서 올바르게 작동하는 지 확인하는 테스트 코드를 작성한다.
이는 개발 시간을 늘리는 것처럼 보이지만, 장기적으로 버그를 줄이고 안정성을 높이는 투자다.
▪️코드의 가독성
나중에 다른 개발자가 코드를 이해하고 수정할 수 있도록 명확하고 깔끔하게 작성하려고 한다.
▪️보안
사용자의 개인정보, 결제 정보, 비즈니스 데이터등을 안전하게 보호해야한다.
이러한 개발자의 관점을 이해하면 기획자는 더 현실적이고 구현가능한 기획을 할 수 있다.
'✎ STUDY > #5 웹기획' 카테고리의 다른 글
웹기획 실전가이드7 (0) | 2025.09.23 |
---|---|
웹기획 실전가이드6 (0) | 2025.09.12 |
웹기획 실전가이드5 (0) | 2025.09.11 |
웹기획 실전가이드4 (0) | 2025.09.10 |
웹기획 실전가이드3 (0) | 2025.09.09 |