About

I’m a Java Back-end Web Developer, and I like front-end web development, JavaScript, HTML5, jQuery, Mobile Web, open source, java, One Piece, apple, Macintosh OSX, iOS, ubuntu, Korean Localization.

2 thoughts on “About

  1. 이재면 댓글:

    안녕하세요.

    블로그를 보다가 궁금한점이 있어서 이렇게 글을 남기게 되었어요.
    저는 작년 9월부터 웹개발자로 일을 하고 있습니다. 그전에 학교 다닐때는 메카트로닉스에 관심이 있어서 지금은 아두이노로 유면한 MCU 칩을 사서 거기에 간단한 C코딩을 해서 이런저런 간단한 제어를 했고, 졸업해서는 건설회사에서 일을하다가 프로그래밍쪽으로 하고 싶어서 SI에서 잠시일하고, 프로젝트에서 안드로이드 개발을 반년정도(무급)하다가 결국은 정식으로 웹개발자로 일을 시작하게 되었습니다.

    아쉽게도 제가 일을 시작한 곳에서는 서비스를 출시하고 일련의 많은 경험을 해보신 웹개발자가 없어서 제가 이런저런 지인들로부터 개발상황을 듣거나, 이런저런 튜토리얼 및 컨퍼런스 등을 참석하여 최신 트렌드와 다른 곳에서는 어떤 업무프로세스를 도입하여 어떻게 진행이 되는지 참고하고자 노력하고 있습니다.

    일단 저는 Django로 백앤드 개발을 하고, 기본적으로 CSS, HTML 그리고 jquery 라이브러리를 통해서 기본적인 화면구성이 가능합니다. 그리고 Angular, React 등을 통해서 기본적인 프론트단을 만들수 있습니다. DevOps에도 관심이 많아서 CI/CD, Microservice, Docker활용 등에 대한 기본적인 개념과 기본적으로 셋팅은 할 수 있습니다. 물론 DevOps와 딸려오는 클라우드 서비스에도 이런저런 활용하고자 하고 있구요.(AWS, Azure)

    제 소개가 길었네요. 제 질문이 좀더 잘 파악할 수 있지 않을까해서 장황하게 설명을 했습니다.

    주위에 웹서비스를 제공하는 개발팀에서 일하는 지인들한테 업무프로세스를 들으면,

    기획, 디자인, 퍼블리셔, 프론트, 백앤드, 데이터분석, QA등으로 세분화해서 직무를 나누고 있더라구요. 작은 곳도 프론트, 백앤드는 나눠서 직무를 배치한 곳이 많았습니다.

    세 명의 개발자가 웹서비스를 출시해야 되는 상황에서 프론트 / 백앤드를 나눠서 API로 서로 데이터만 주고 받고 독립적으로 진행되는 프로세스를 도입해야 될 필요가 있을까요? 그냥 프론트 /백앤드의 구분 없이 스프링 MVC로 웹개발을 하는 것이 더 효율적일까요? 저는 프론트/백앤드 개발자를 구분하여 데이터만 주고받게 한다면, 프론트단의 프레임워크가 달라지거나 UI요소들이 확 바뀌더라도 더 유연하게 대처할 수 있다고 생각을 했습니다. 그리고 서비스가 커지게 되면 서비스별로 나눠서 마이크로 서비스처럼 구성해서 더 개발자간의 분업을 할 수 있지 않을까 생각했습니다.

    제가 이런저런 큰 기업의 트렌트에 많이 노출되서 너무 이상향만 그리고 있는건 아닌지, 현실에서는 대부분 DevOps같은 도입은 커녕, 예전 작업방식으로 그냥 계속 진행되는데 제가 이상향만 쫒고 있는거 아닌지 궁금합니다. 저는 웹서비스를 출시하고 고객에게 선보이기 위해서는, 피드백이 변경사항을 잘 반영할 수 있도록 CI/CD 환경도 구축하고, Issue 트렉킹도하고, Web performance 체크도 하고, 프론트단도 프레임워크로 최대한 체계적으로 구축하고 이런 일련의 활동들이 다 같이 동반될 필요가 있다고 생각했습니다. 기본적으로 자동화테스트도 같이 구축하고요 CI를 하기 위해서.. 너무 완벽하게 가져갈려고하는 욕심이 아닌지 궁금하네요. 아니면 이런것들을 다 가지고 가는걸 지양하고 개발단계에서 이런 셋팅들을 하나씩 해야 될지… 현업에서 일하시는 분들은 어떤 프로레스로 협업하고 어떻게 진행하는지 궁금하네요.

    감사합니다.

    • rkjun 댓글:

      블로그를 거의 확인하지 않다보니 답장이 너무 늦었네요.
      이미 지금쯤이라면 어느정도는 궁금증이 다 해결 하셨으리라 생각하지만, 짧게나마 답변을 남깁니다.
      현실에서도 대부분 말씀하신 부분들을 고려하고 있습니다.
      협업을 위해 버전관리나 이슈트래커는 필수에 가깝고, CI/CD 환경도 필수에 포함합니다. 수동으로 배포하는 것은 끔찍하기도 하지만, 시간적인 비용도 아끼고, 혹시 모를 실수도 방지할 수 있고요. 성능체크도 단순한 프로토타이핑이나, 시장조사를 위한 가벼운 서비스가 아니라면 기본적으로 필수에 포함하고요. 견뎌낼 수 있는 성능 수준이 어느 정도는 예측가능해야, 혹시 모를 트래픽 폭주 등에 대응할 수 있겠죠.
      블로그를 너무 방치해 두어 답변이 늦어 죄송합니다.
      행복한 코딩생활 되세요^^

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중