개발팀 컴케
개발자 리드(테크 리드)의 역할
- Engaging with Business 비즈니스 참여
- Frequent communication with seniors 시니어들과의 잦은 소통
- Reporting 보고
- Technical point of contact 기술 소통 포인트
- Peer to product owner, project manager, other discipline leads 제품 소유자, 프로젝트 관리자, 기타 분야 리드와 소통
- Engaging with Team 팀 관계
- Ensure safety 안전감 확보
- Defines & demonstrates ‘good’ ’잘하는 것’ 정의 및 입증
- Delegation & chorus 위임 및 협업
- Leading & building people 팀 리딩 및 빌딩
- Facilitates technical discussion 기술 협의 촉진
- On boarding 온보딩
- Architecture & Infrastructure 아키텍처 및 인프라
- Remove moral hazards 도덕적 헤이 방지
- Structures emerging design 신규 디자인 구조화
- Governance 거버넌스(관리)
- Identify tech debt 기술 부채 식별
- Vision & metaphor 비전 제시, 비유(?)
- Identify CFRs CFRs 식별(like OKRs)
- Coding 코딩
- Delivery & Risk 전달 & 위험관리
- Managing tech debt and CFRs 기술 부채 & CFRs 관리
- Reputation management 평판 관리
- Risk analysis 위험 분석
- Risk mitigation 위험 완화
- Prioritisation 우선순위 지정
- Set Technical Vision 기술 비전 설정
- Defines Architectural Forces 아키텍쳐 적용 정의
- Assures Delivery 전달 보증
- Challenges Solution 도전 과제 해결
제품 테스트 및 스테이징 서버
제품 출시 전 해야할 일; 테스트
- 일반적인 제품 개발 과정 : 고객 문제 발견 → 디자인 → 개발 → 테스트
- 제품 개발 이후; 정상적으로 동작하는지 테스트 진행 필요
스테이징 서버
- 테스트와 제품 관리를 전담하는 서버
- 실제 완성된 제품이 정상적으로 동작하는지 확인하기 위한 서버
- 프로덕션 서버 : 실제 제품이 돌아가는 서버
- 스테이징 서버 : 프로덕션 서버와 같은 형태로 구성됨, 개발 완료 후 스테이징 서버에 배포해 필요한 테스트 및 요구사항 확인 진행
개발팀의 제품 개발 과정
- 요구사항 정의
- 설계
- 로컬 개발, 디버깅
- 코드 업로드
- 코드 리뷰
- 테스트 배포
- 테스트
- 프로덕션 배포
요구사항 정의, 설계 및 API
요구사항 정의
- 고객 요구사항 정의
- 기능 요구사항으로 재정의
- 개발 요구사항으로 전환
- 개발 Lead와 협업 중요 / 백로그 관리
설계 과정 고려 요소
- Reusability 재사용성
- Changeability 가변성
- Maintainability 유지보수성
- Extensibility 확장성
- Understandability 이해가능성
- Reliability 신뢰성
API
- Application Programming Interface(Abv)
- 어플리케이션을 프로그래밍하는데 필요한 인터페이스
- 인터페이스; 상호 정보 소통을 돕기 위해 경계에 존재하는 시스템
- IT서비스 내 정보의 소통이 일어나는 곳은 서버 & 클라이언트임
- 서로 정보를 어떻게 주고 받을지에 대해 API 형태로 미리 정의
- 정의된 API를 바탕으로 FE-BE 개발 진행하는 것이 일반적
- 웹 기반 서비스의 경우, 웹 주소 형식을 통해 정보를 요청하고 전달 받는 방식을 주로 사용함
- API 문서
- 요청 정보 : 요청 URL, 요청 방식 (GET / POST /...)
- 서버가 제공할 기능 : 데이터 조회(Read), 데이터 생성(Create) 등
- 응답 데이터 : 응답 데이터 형식 (어떤 key 로 어떤 데이터를 줄지, 예. response['img'])
- API 문서 예시
- API 예시
- 클라이언트: 나의 chrome 창 에서
- 요청(Request): 요청 URL을 입력하고 엔터를 치는 것은 아래와 같은 의미
- 요청(Request) URL: https://api.thecatapi.com/v1/images/search
- api.thecatapi.com 이라는 서버 주소의
- v1/images/search 인 API에
- 브라우저 주소창에서 엔터치기 = GET 요청을 보내기
- 서버 기능: 서버는 정해진 동작인 랜덤 고양이 사진 데이터를 조회 를 실행
- 응답(Response) : 고양이 사진 데이터(JSON )를 클라이언트에 응답
Open API
- 하나의 웹 사이트에서 자신이 가진 기능을 이용할 수 있도록 공개한 프로그래밍 인터페이스
- 제공 목적 : 자사 서비스 기능을 다양한 서비스에 활용해 서비스 저변을 넓히기 위해 공개적으로 제공함
- 메타 서비스를 제공하는 대기업의 경우, 시장 확대를 목적으로 오픈 API 운영
- 공공 목적의 비영리기관의 경우, 무료로 API 제공하는 경우 있음
RESTful API
📌 유지보수의 어려움을 해소하고자 일정 아키텍처의 제약 조건을 준수하는 애플리케이션 프로그래밍 인터페이스 중 하나임
RESTful API 요청 종류
📌 Method= y = ax+b
함수 = Method
함수의 x 값 = Parameter
- C : Create : 타임라인에 사진을 '올리는' 요청
- R : Read : 사진을 '불러오는' 요청
- U : Update : 사진을 '바꾸는' 요청
- D : Delete : 사진을 '지우는' 요청
RESTful API 명령 종류
- Create(생성) : POST
- Read(읽어오기) : GET
- Update(변경) : PUT(전체)/PATCH(일부)
- Delete(삭제) : DELETE
DB가 필요한 이유
- 무결성 : 실제 데이터와 정확하게 일치하고, 유효한지 등 일관성에 대한 보증
- 안정성 : 날리지 않게 백업
- 보안성 : 보안이 중요, 해킹방지, 권한 관리 등
- 확장성 : Scale up 시 용이한 확장
카카오맵 API
(ref.) HTTP 요청 메서드
API 활용한 길 찾기 단축어
1. 카카오디벨로퍼스에서 애플리케이션 등록을 통해 앱 키 부여 받기
- 네이티브 앱 키: Kakao SDK for Android 초기화, Kakao SDK for iOS 초기화 시 사용
- REST API 키: REST API 요청 시 HTTP 헤더(Header)에 전달
- JavaScript 키: Kakao SDK for JavaScript 초기화 시 사용
- Admin 키: 일부 관리자 기능에 사용, 모든 권한을 갖고 있는 키이므로 유출되지 않도록 주의
2. REST API 활용하여, 단축어 스크립트 작성
3. 실제 실행 화면
'PMB_09 > Daily' 카테고리의 다른 글
[코드스테이츠 PMB 9기] 제품 개발 프로세스 w. 카카오톡 멀티프로필 (0) | 2022.01.10 |
---|---|
[코드스테이츠 PMB 9기] JSON, Git (0) | 2022.01.06 |
[코드스테이츠 PMB 9기] 웹/앱서비스 & FE/BE (0) | 2022.01.04 |
[코드스테이츠 PMB 9기] IT서비스 기초 및 FE 지식 / w. 커피챗 (0) | 2022.01.03 |
[코드스테이츠 PMB 9기] 데이터 분석 / w. 데이터 시각화 (0) | 2021.12.30 |