솔로 주니어 개발자로 진행 상황을 검토하려면 어떻게해야합니까?


38

저는 현재 개인 개발자로 2 인 회사에서 일하고 있습니다. 상사는 고객을 데려 와서 일부 png 디자인 템플릿을 모아서 나에게 넘겨줍니다.

이 시스템은 잘 작동하고 정말 즐기고 있습니다.

내가 작업하는 프로젝트 유형은 중소 기업을위한 것이며 대개 CMS 시스템을 원합니다. 처음부터 개발하여 고객이 카테고리, 태그, 제품 등을 추가 / 편집 / 제거 할 수 있도록 맞춤형 백엔드를 구축 한 다음, 나에게 전달 된 디자인 템플릿에 따라 프런트 엔드로 출력합니다. 시간이 지남에 따라 쇼핑 카트 / 주문 기능 및 기타 일반적인 전자 상거래 유형 기능으로 프로젝트가 복잡해졌습니다.

다시 말하지만,이 시스템은 잘 작동하고 정말 즐기고 있습니다.

내 문제는 프로그래머로서의 개인적 발전이다. 나는 (현재 '에 제안 프로그래밍 책을 읽고, 내 여분의 시간, 블로그를 프로그래밍 읽기 stackexchange을 통해 확인 많이 지출 실용적인 프로그래머 뇌 운동 (하고, 정말 좋은 지금까지') lumosity.com칸 아카데미를 많이하고, 수학 문제를) 신체 운동 및 기타 개인 개발 유형 활동.

나는 피드백, 비판에 빠졌다는 것을 도울 수는 없지만 느낄 수는 없습니다. 내 상사는 훌륭하고 내 작업과 관련하여 결코 칭찬을지지 않습니다. 그러나 불행히도 내 코드를 확인하거나 정직하기 위해 바쁩니다. 그의 전문 분야 중 하나라고 생각하지 않으므로 피드백을 제공 할 수 없습니다. .

내가 뭘 잘못하고 있고 내가 뭘하는지 알고 싶어 컨트롤러에 많은 논리를 넣어야한다면 코드를 충분히 변조하고 있습니까?

그래서 내가 한 일은 작은 'Family Budgeting'앱을 개발하고 현재 알고있는 것처럼 깨끗하고 효과적으로 수행하려고했습니다.

내가 알고 싶은 것은이 앱을 제출할 수있는 곳이 있고 노련한 개발자가 피드백을 제공하도록하는 것입니다. 'codereview.stackexchange'와 같은 코드의 하위 섹션 일뿐 만 아니라 비판을 원하는 전체 워크 플로우입니다.

나는 이것이 많은 것을 요구한다는 것을 알고 있으며, 주어진 주요 조언은 팀 내에서 일자리를 찾는 것이 될 것이라고 기대합니다. 고용 상황이지만 나쁜 습관을 너무 많이 개발하고 싶지는 않습니다.

명확히하기 위해 추가 정보를 제공 할 수 있는지, 또는이 유형의 질문에 적합한 장소가 아닌 경우 사전에 사과드립니다. 이 커뮤니티가 더 잘 생각하는 답변을 장려한다고 느꼈기 때문에 레딧을 사용하고 싶지 않았습니다.


3
예전에는 주니어 개발자가 아니었기 때문에 주니어 개발자가 이런 식으로 실행하는 것은 좋지 않은 생각입니다. PNG 모형을 언급하지 않아도 효과적인 CMS를 작성하는 데 필요한 정보는 거의 제공되지 않습니다. 또한 자체 설정이 없을 때 솔로 개발자가 마이크로 CMS를 포함한 클라이언트를 위해 합리적인 시간에 쓸 수있는 것보다 효과적인 CMS를 지속적으로 작성하는 이유는 무엇입니까?
Rig

2
초기에 그는 Coldfusion으로 구축 된 자체 CMS를 보유하고있었습니다. 나는 시행 착오를 통해 언어를 배웠고 그것을 사용하여 몇 가지 프로젝트를 완료했습니다. 시간이 지남에 따라 PHP를 사용하는 경험이 많고 더 큰 커뮤니티가 의존하기 때문에 PHP로 전환하는 것이 좋습니다. (Google에 크게 의존하는 상사 없음) 그 이후로 ciBonfire에서 재사용 가능한 모듈 식 CMS를 점차 구축해 왔습니다. 카탈로그 시스템은 거의 완벽합니다. 문제는 제가 배우면서 배우고 있다는 것입니다.
hoppipolla

2
@OliverHyde "문제는 제가 배우면서 배우고 있습니다. 고객을 기쁘게 해 드리겠습니다." 이것은 다른 곳에서도 다르지 않습니다.

답변:


21

기술을 향상시키기 위해 올바른 길을 가고 있으며 코드의 안정성과 엔터프라이즈 준비 상태에 대해 확신 할 수 없습니다.

이는 하급 개발자에게는 일반적인 과정이며, 언젠가 록 스타 개발자가되기 위해서는 개선에 대한 관심이 매우 중요합니다.

모범 사례를 배우기위한 참고 자료로서 열정적이고 호기심 많은 프로그래머를 위해 무료로 호스팅되는 오픈 소스 프로젝트에 참여하는 것이 좋습니다. 모범 사례를 사용하는 방법과 응용 프로그램 디자인을 결정하는 방법을 이해하는 데 도움이됩니다. 또한 오픈 소스 프로젝트 개발에 참여하십시오. 자율 학습 및 개선이 크게 향상 될 것입니다.

또한 소프트웨어 개발자를위한 지역 사회 행사에 참석하는 것이 좋습니다. 이러한 그룹 중 일부는 communitymegaphone.com 에서 찾을 수 있습니다 . 현지 버디 프로그래머와 대화하십시오. 동료를 돕고 싶지 않은 사람들은 대부분 좋은 사람들입니다.


흠, 어쩌면 어디서부터 시작 해야할지 모르는 오픈 소스 프로젝트에 참여할 것입니다 : / 연구를해야합니다. 지역 사회 행사와 관련하여, 나는 지역 모임에갔습니다. 뉴질랜드에서는 그들이 당신이 주에서 얻는 것처럼 보이는 것에 비해 부족하지만 발생하고 매우 도움이됩니다. 피드백 주셔서 감사합니다.
hoppipolla

코드를보고있는 다른 실제 사람들과 확실히 참여하십시오. 그 대체품은 없습니다.
jeffreypriebe

그래, 나는 '개인 예산'앱을 정리하고 있으며 재평가 또는 다른 커뮤니티 포럼에서 평가를 위해 제출할 것입니다.
hoppipolla

9

더 많은 경험을 얻으면 확실히 돌아가서 이전 프로젝트 / 코드를 검토하여 잘못 된 곳을 확인할 수 있습니다. Hinssight는 아름다운 것입니다. 내가 x 전에 작성한 코드 / 문서를 살펴본 결과 내가 잘못 된 곳과 개선 할 수있는 곳을 깨달았습니다.

블로그, 서적, SE 등을 읽는 사실은 자신의 개인적인 개발의 일부로 프로그래밍에 대한 더 큰 통찰력을 제공해야하며 프로젝트와 코드의 시행 착오와 진화는 확실히 당신이 사실이라는 증거가되어야합니다. 다시 개선. 자기 비판은 아주 좋은 일이 될 수 있습니다.

그러나 다른 개발자의 비판을 받으면 항상 가치가 높아지고 생각하지 못한 의견 / 옵션을 제공 할 수 있습니다. 코드 검토를 위해 전체 프로젝트를 덤프 할 수있는 특정 사이트는 알지 못하지만 의심되는 부분을 codereview.stackexchange에 배치하여 설명과 의견을 작성한 다음 해당 의견을 기내에서 적용하십시오. 적절한 다른 곳.

또는 오픈 소스를 작성하여 github (또는 이와 동등한 것)에 버릴 수도 있습니다. 오픈 소스 커뮤니티는 확실히 귀하의 작업을 비평하고 그들이보기에 적합한 곳에서 개선 할 것입니다.

하루가 끝날 때, 생산중인 제품이 의도 한대로 작동하면 비즈니스 요구 사항을 충족하고 유지 관리 할 수 ​​있으면 올바른 일을하는 것입니다.

개념적 프로그래밍 질문, 패턴 등의 경우 언제든지 해당 질문을 PSE에 게시하고 SO에 대한 코드 구현 문제를 게시 할 수 있습니다.


건배, 내 예산 앱을 분해하고 코드 검토에 일부 스 니펫을 게시 할 수 있다고 생각합니다.
hoppipolla

3

저의 의견, 지혜의 말씀, 그리고 여러분이 생각할 수있는 몇 가지 질문을 나누겠습니다.

경험이 풍부한 프로그래머로서 수년 동안 최고의 코드는 단순하고 (KISS 개념을 보았으며) 다른 프로그래머가 쉽게 수정할 수 있다는 것을 알게되었습니다.

또한, 코드가 혼잡하지 않고 (호흡 공간) 고르게 구조화 될 수 있도록 충분한 공간을 남겨 두십시오. 변수에 대해 잘 알려진 명명 규칙을 사용하여 이해할 수있는 이름 (다른 프로그래머가 이해할 수있는 이름)을 제공하고 너무 많거나 적지 않은 주석을 작성하십시오.

위의 내용을 따르면 이미 좋은 길을 가고있는 것입니다.

또한 개발자는 건축가와 비슷하기 때문에 여러분이 반드시 고려해야한다는 매우 중요한 말을합니다.

  1. "완벽한 것은 남은 것이 없을 때가 아니라 남은 것이 없을 때"입니다. – Antoine de Saint-Exupery.

  1. "우수성을위한 노력은 동기를 부여합니다. 완벽을위한 노력은 쇠퇴합니다"-Harriet Beryl Braiker.

하나,

  1. "많은 사건, 효과의 약 80 %가 원인의 20 %에서 나옴"-파레토 원리

위의 내용을 통해 노력과 효과, 비용 및 품질 사이에 훌륭한 균형이 있음을 이해하고 싶습니다.

그리고 고려해야 할 질문들;

  1. 앞으로 5 년 동안 무엇을하고 싶습니까?
  2. 코딩 기술을 향상시키는 노력이 장기적으로 프로 경력에 도움이됩니까?

1

https://codereview.stackexchange.com/ 을 확인 하십시오.

숙련 된 전문가로부터 코드 또는 디자인에 대한 피드백을 얻을 수있는 좋은 장소입니다.


예, 제 질문의 요점은 거기에 게시하기에 적합한 본격적인 앱이거나 다른 방법으로 할 수 있다고 생각합니다. codereview가 검사 할 코드 스 니펫으로보다 타겟팅 된 것처럼 보입니다. 기본적으로 github 프로젝트에 대한 링크를 제공하고 느슨하게하십시오. 오늘 정리하고 있으며 링크를 게시 할 커뮤니티 포럼을 검색 할 것입니다. :)
hoppipolla

1
한 번에 한 명의 개발자가 tme에서 씹을 수 있습니다. meta.codereview.stackexchange.com/questions/537/… 한 번에 한 조각 씩 시도한다고 말합니다. 어떤 종류의 첫 번째 IME에 대한 코드베이스를보고 검토에 도움이 될 수 O를이 코드 검토 자체하지만 높은 수준의 설계 문서에 적합하지 않을 것이다
제시카 브라운

@OliverHyde 하나의 소스 파일을 게시하고 가장 복잡한 파일 중 하나를 말하면 전체 프로젝트에 적용되는 해당 파일에 대한 피드백을받습니다. 프로그램 언어 및 코딩 스타일에 대한 피드백을 얻을 수있는 좋은 방법입니다. 전체 프로그램 디자인에 대한 피드백을 찾고 있다면 FAQ에 따라이 사이트에 게시 할 수 있습니다.

1

책, 블로그 및 Stack Overflow Q & A를 계속 읽으십시오. 보다 사회적으로 자신을 향상시키고 싶다면 오픈 소스 프로젝트에 참여하지 않겠습니까? 나는 자신의 프로젝트를 만드는 것이 아니라 기존 프로젝트 에서 작업 한다는 것을 의미 합니다 .

이 회사의 유일한 개발자이므로 언젠가 다른 사람을 고용 할 가능성이 있다고 생각합니다. 오늘은 그 사람이 당신의 코드를 읽어야한다고 스스로에게 말하십시오. 도구에 대한 문서를 이미 작성 했습니까? 다른 사람들이 자신의 작업을 읽을 수 있다는 것을 명심하는 것은 솔로 개발자에게는 좋은 일이며 더 나은 코드를 만드는 데 도움이됩니다.


1
그래, 지금 코딩 작업을 시작했다. 내 상사는 그가 :) 내 문서의 상단에 추가로 개발자 내년 .... 내기 get 및 고용에 보일 수 있습니다 제안했다
hoppipolla

1

나는 당신과 비슷한 상황에 있으며 5 인 회사의 유일한 프로그래머로 고용되었으며 그중 하나만이 내가 개발 / 추가중인 응용 프로그램에 직접 관여합니다. 운 좋게도 처음부터 아무것도 만들 필요가 없었지만 지금까지는 이전에 빌드 한 응용 프로그램 만 수정했습니다. 그렇게 할 때, 나는 그의 코드의 어떤 부분이 좋았는지, 어떤 부분이 나빴으며 어떻게 개선 할 수 있는지를 인식함으로써 이미 나 자신을 개선했다고 생각합니다.

코드 읽기는 자체 코딩을 향상시키는 데 큰 부분을 차지하므로 무엇보다도 오픈 소스 프로젝트를 검색하고 코드를 읽고 이해 한 다음 무엇이 좋은지, 나쁜지, 개선 될 수있는 부분을 판단하려고합니다. 블로그에 코드 리뷰를 작성해도됩니다.

건배!


응 건배! 나는 여기서 더 오래 일하고 있으며 온라인 코드 검토 웹 사이트 및 자체 검토를 사용하는 좋은 리듬을 발견했습니다.
hoppipolla

-1

떠나다. 남기다. 맡기다. 출발하다. 당신이 배울 수있는 똥 핫 놈들을 포함하여 더 큰 개발자 팀에서 일할 새로운 고용주를 찾으십시오.

당신은 원하는 모든 올바른 동기를 분명히 가지고 있습니다.


4
이것이 첫 번째 옵션이 아니어야합니다. OP는 그의 일을 즐기고 있으며, 그는 또한 훌륭한 보스를 가지고 있으며, 요즘에는 드물게 보입니다. 점프하기 전에, 당신이 즐기지 않는 직업, 나쁜 상사, 그리고 실제로 새로운 것을 배우겠다고 보장 할 수 없다는 것을 고려하십시오.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.