자바 개발자로 취업 가능한 회사 SI/SM에 대한
세미나 내용을 요약/정리 해드렸죠!
이번엔 스타트업 편입니다.
1편을 보고 오시는 것을 권장드립니다!
-
1. 스타트업이란?
우선, JAVA개발자로 취업할 수 있는 회사는 크게 SI/SM, 스타트업, 서비스 회사로 꼽을 수 있습니다.
스타트업(Start-up): 세상에 없는 새로운 서비스를 제작하는 소규모기업/벤처기업을 말합니다.
수익을 창출하는 서비스(캐시카우CashCow라고도 합니다)가 없기 때문에 투자자를 찾아다니면서 지속족인 투자를 통해 운영합니다.
신생회사이다 보니 파격적인 조직문화가 특징입니다.
스타트업기업이 수익이 안정적이게 되면 서비스 회사로 성장하면서 대기업이 되는 루트가 흔합니다.
흔히 얘기하는 네카라쿠배(네이버, 카카오, 라인, 쿠팡, 배달의민족)가 스타트업으로 시작했습니다.
2. 사업구조
사업팀, 개발팀, 기획팀, 디자인팀이 피드백을 계속 주고 받습니다.
▼
1주는 1번 기능, 2주는 2번 기능...
계속 피드백해서 기능을 개선해 나갑니다.
이런 방식의 업무 방식을
소프트웨어 공학론에서 애자일Agile이라고 합니다.
짧은 주기로 개선해나가며 변화에 유연하게 대처하는 방식이라고 보면됩니다.
규모가 크지 않은 스타트업에서 많이 적용합니다.
SI편에서 말한 워터폴Waterfall방식과 다른 개념입니다.
▼
그렇게 해서 나오는 차수별 제품을 가지고
투자자들을 찾아다니면서 투자를 유치하는 구조입니다.
3. 시스템 구성 및 개발
클라우드 컴퓨팅
서버 컴퓨터의 물리장비가 존재 하지 않고 클라우드 서버에 있는 것을 원하는 만큼 쓴다는 개념입니다.
대부분의 스타트업에서는 물리적 장비의 비용 절감을 위해 클라우드 컴퓨팅을 사용합니다.
로그수집
코드가 배포된 서버인 WAS(Web Application Server)가 동작하면서 남기는 발자취입니다.
어떤 요청이 들어왔고, 어떤 비즈니스 로직이 돌았는지 남기는 일을 합니다.
장애 알람
WAS가 돌아가면서 생기는 장애들을 알리는 시스템입니다.
클라우드 데브옵스(DevOps)
Development+Operations의 합성어로, 개발도 운영도 하는 분야 또는 개발자를 뜻합니다.
인력이 많지 않은 스타트업에서는 이런 1인 다역이 필요합니다.
MSA(Micro Service Architecture) 관리
하나의 큰 어플리케이션을 여러개의 작은 어플리케이션으로 쪼개어 변경과 조합이 가능하도록 만든 아키텍쳐를 말합니다.
MSA관리 역시 스타트업 개발자의 업무 중 하나입니다.
*스타트업에서는 개발자가 이 모든 일을 합니다.
여러 명의 개발자에게 분배되어서 개발하게 되지만,
근무강도가 강할 수 밖에 없긴 합니다.
4. 주요사용 기술 및 역량
백엔드 / 프론트엔드
SI/SM과 다르게 프론트와 백엔드가 구분되어 있습니다.
JAVA개발자라면 언젠가는 프론트엔드/백엔드를 선택해야 되는 시점이 옵니다.
특히 서비스 회사를 목표로 한다면 선택이 필요합니다.
백엔드
JAVA8
JAVA 백엔드에서는 JAVA8 이상의 역량이 필요합니다.
JAVA7에서 JAVA8은 큰 변화가 있었기 때문에 JAVA8을 쓸줄아는 여부는 굉장히 큽니다.
그래서 스타트업이나 서비스 회사에서는 JAVA8이 반드시 필요합니다.
스프링부트(Spring Boot)
스프링을 경량화 시킨 프레임워크입니다.
스타트업은 빠르게 결과를 보여줘야 되는 상황이 많은데,
스프링부트는 빠르게 올릴 수 있는 장점이 있어서 필수 역량입니다.
*JPA(JAVA persistent API)
개발자가 쿼리를 짜지 않게 만들어주는 프레임워크입니다.
자바스프링에서 데이터베이스에 접근하기 위해 JPA라는 기술을 쓰기때문에 중요합니다.
스타트업의 경우, 노드제이에스, 고랭, 파이썬 등을 쓰는데,
자바란 보장이 없지만 자바/스프링을 80%는 씁니다.
프론트엔드
*리액트, 뷰, 앵귤러 3가지를 많이 사용합니다. 그중에서도 리액트가 압도적으로 많습니다.
데이터베이스
MySQL, MariaDB는 기본적으로 무료 라이센스이기때문에 스타트업에서 많이 사용합니다.
무료기 때문에 오라클에 비해 컴퓨팅 파워가 약합니다.
그래서 서버를 고가의 장비로 설정하여 대부분의 연산을 서버가 담당합니다.
AWS
클라우드 컴퓨팅에 대한 이해도와 AWS 사용 숙지가 필수적입니다.
5. 장점 / 단점
전문성을 기를 수 있습니다. BUT 체력적으로 힘들 수 있어요.
JAVA를 다루는 역량을 많이 키울 수 있습니다.
BUT 데이터베이스 프로시저나 쿼리는 사용하지 않아 해당 능력은 감소 할 수 있어요.
다양한 기술, 최신 기술을 사용해 볼 수 있는 기회가 많습니다.
BUT 신기술에 대한 진입장벽이 있고, 적응하는데 어려움을 겪을 수 있습니다.
스타트업을 선택한다면 신기술 적용에 대한 스트레스를 감당할 수 있는지 고민해봐야 합니다.
하이리스크 하이리턴에 따라 회사의 성공이 급여나 복지로 연결되므로 보람이 있습니다.
BUT 회사가 어려워질 수 있어요. 스타트업은 폐업하는 곳이 많습니다.
-
자바로 스타트업 취업에 관심 있는 분들에게 도움이 되길 바랍니다!
COMMENT (0)개