JavaRush /Java Blog /Random-KO /커피 브레이크 #48. 주니어 개발자를 위한 9가지 유용한 습관

커피 브레이크 #48. 주니어 개발자를 위한 9가지 유용한 습관

Random-KO 그룹에 게시되었습니다
출처: 무료 코드 캠프 당신의 습관을 분석해 본 적이 있나요? 좋은 것들은 당신이 원하는 사람이 되도록 도와줍니다. 나쁜 습관은 당신을 점차 당신이 되고 싶은 사람으로 변화시킬 것입니다. 12년 넘게 소프트웨어 개발자로 일하면서 저는 자랑스러워할 만한 습관이 생겼고, 버리고 싶은 습관도 생겼습니다. 처음에는 그 의미를 깨닫지 못했지만, 어느 습관이 내 성장에 도움이 되고 무엇이 나를 방해하는지 분명해졌습니다. 이로 인해 나는 목록을 작성하고 당신도 그렇게 하도록 영감을 줄 수 있는 것에 대해 글을 쓰게 되었습니다.커피 브레이크 #48.  주니어 개발자를 위한 9가지 유용한 습관 - 1

이해하지 못하는 일을 자발적으로 맡는다

경력 초기에는 아는 것이 별로 없습니다. 그러므로 당신은 아마도 사기꾼처럼 느껴질 것입니다. 결국 회사는 전문가로서 급여를 지급하는데, 당신은 동료가 사용하는 기술과 프레임워크의 이름을 절반도 모릅니다. 그리고 시간에 맞춰 구글에서 검색을 했기 때문에 후반부에 대해서만 들으셨는데요. "경력 시작 시"라는 단어를 "새 프로젝트 시작 시"로 바꾸면 소프트웨어 개발 경력에 대한 매우 정확한 그림을 얻을 수 있습니다. 모든 새로운 프로젝트는 새로운 것의 시작입니다. 우리는 새로운 사람들을 만나고, 새로운 요구 사항을 이해하고, 새로운 프레임워크를 배웁니다. 그래서 매번. 그렇기 때문에 끊임없이 새로운 것을 배우는 것이 매우 중요합니다. 항상 자신이 잘하는 일만 하면 새로운 프로젝트를 자신있게 맡을 수 없습니다. 미지의 것에 대한 두려움은 항상 당신 앞에 나타날 것입니다. 아무것도 모르는 일을 스스로 해내는 습관을 들이면 새로운 기술과 지식을 얻을 수 있습니다. 어셈블리에서 무언가를 수정해야 하는데 이전에 그런 작업을 경험해 본 적이 없다면 이 작업을 수행하십시오! 필요한 경험과 새로운 기술을 얻게 될 것입니다. 프런트엔드 JavaScript 코드에 버그가 있고 지금까지 Java 백엔드로만 작업했다면 수정하세요! 확실하지 않은 일을 하는 것은 전문적으로 성장하는 좋은 방법입니다. 그러나 다른 사람의 기대를 속여서는 안 됩니다. 모든 일에 에이스인 척하지 마세요. 이전에 이런 일을 해본 적이 없지만 배우고 싶다고 솔직하게 말하세요.

누군가와 짝을 이루어 작업하도록 요청하세요.

어떤 문제에 봉착했거나 작업을 완료하는 방법을 모르는 경우 경험이 더 많은 사람에게 함께 일해 달라고 요청하세요. 페어 프로그래밍은 일을 진행하는 좋은 방법입니다. 동료와 요구 사항에 대해 논의하십시오. 이렇게 하면 결과가 무엇인지 더 쉽게 이해할 수 있습니다. 그런 다음 솔루션 옵션에 대한 논의를 시작하십시오. 더 나아가서 쌍으로 작업하여 코드를 작성하면 동료가 힌트를 주고 그 반대의 경우도 가능합니다. 이는 문제에 대해 생각하고 해결하는 방법을 배우는 데 도움이 될 것입니다. 초보자에게는 페어 프로그래밍이 매우 유익합니다. 재택근무에 관한 참고 사항입니다. 원격 근무 형식으로 전환했을 때 저는 완전히 새로운 문제에 직면했습니다. 나는 동료들에게 나와 짝을 이루어 일하도록 요청해야 할지 의문이 들기 시작했습니다. 사무실에서는 모든 것이 간단했습니다. 다음 테이블로 가서 이 문제에 대해 논의하면 됩니다. 원격 근무와 화상 회의를 통한 커뮤니케이션으로 인해 모든 것이 눈에 띄게 복잡해졌습니다. 이것이 당신에게도 문제가 된다면, 동료들과 그것에 대해 이야기하십시오. 평소의 접근 방식을 조금 바꾸고 새로운 습관을 개발하면 됩니다.

당신이 하는 일과 하지 않는 일을 보고하세요

하루면 끝낼 수 있을 거라 생각하고 열정적으로 일을 하다가 일주일 만에 끝낸 적이 몇 번이나 기억나지 않습니다. 경험을 통해 나는 그러한 상황에 처할 가능성이 줄어들었지만 때로는 평가에 여전히 너무 낙관적입니다. 이 예상 시간에는 여러 가지 이유가 있습니다.
  • 경영진은 마감일이 가까워졌기 때문에 새로운 기능을 빨리 완료할 것을 요구합니다.
  • 나는 직장 동료들에 비해 멋있어 보이고 싶다.
  • 많은 일이 예상대로 작동하지 않습니다.
  • 그리고 많은 다른 사람들…
일반적으로 귀하의 예상 시간은 지나치게 낙관적일 가능성이 높습니다. 이 문제를 해결하는 방법은 무엇입니까? 진행하면서 기대치를 관리할 수 있습니다! 당신이 하고 있는 일에 대해 끊임없이 이야기하고, 당신을 방해하는 것이 무엇인지 항상 이야기하십시오. 15분마다 작업 상태 업데이트를 발행해야 한다는 뜻은 아닙니다. 관련 사람들이 귀하가 진행 중인 위치를 알고 있는지 확인하십시오. 근무일의 시작과 끝에서 이를 전달하는 것이 가장 좋습니다. 당신의 상사나 팀/프로젝트 관리자가 당신에게 결과를 기대한다면 매일 그에게 다음과 같이 보고하십시오. “나는 이런저런 일을 하고 있습니다. 나는 그런 문제를 발견했습니다. 문제를 해결하기 위한 옵션은 다음과 같습니다." 이렇게 하면 관심 있는 모든 사람이 귀하의 진행 상황을 알게 됩니다. 갑자기 문제가 발생하더라도 사람들에게 최신 정보를 제공하는 한 아무도 당신을 비난하지 않을 것입니다. 추가 이점: 작업의 현재 상태를 보고하면 문제에 대한 다른 권장 사항이나 솔루션을 들을 수 있습니다. 작업 결과에 대해 이해관계자에게 정기적으로 업데이트하는 습관을 들이십시오.

블로그를 시작하세요

아마도 제가 이 조언을 처음으로 들은 사람은 아닐 것입니다. 하지만 어쨌든 말씀드리겠습니다. 블로그입니다! 블로그를 공개할 필요는 없습니다. 이는 회사 위키의 두 페이지일 수도 있고 코드 예제와 몇 줄의 설명 텍스트가 포함된 GitHub 저장소 모음일 수도 있습니다. 이것이 왜 필요한가요? 다른 사람을 가르치기 위해 글을 쓴다면(그 "다른 사람"이 미래의 자신이더라도) 전문적으로 배우고 성장할 수 있는 좋은 방법이기 때문입니다. 어려운 문제를 어떻게 해결할 수 있었는지 적어 보세요. 또는 오랫동안 기다려온 새로운 프레임워크의 작동 방식에 대해 알아보세요. 일주일 동안 무엇을 했는지 일기를 쓸 수도 있습니다. 그건 그렇고, 이것은 현재 작업 중인 내용을 전달하는 습관을 기르는 데 도움이 될 것입니다. 나는 여러 번 블로그를 시작했습니다. 물론 처음에는 동기를 유지하고 글을 쓰도록 강요하는 것이 매우 어렵습니다. 귀하의 게시물을 읽는 사람이 거의 없다는 사실을 깨닫습니다. 허공에 글을 쓴다는 게 참 이상해요. 이런 이유로 나는 블로그를 포기했습니다. 그리고 3년 전에 나는 다음 블로그를 시작했습니다 . 6개월 동안 청중 없이 글을 썼습니다. 그러다가 내 robots.txt 파일이 검색 엔진이 블로그를 색인화하는 것을 허용하지 않았기 때문에 독자가 없다는 것을 알게 되었습니다! 간단히 말해서 robots.txt의 설정을 변경하자 사람들이 내 기사를 읽기 시작했습니다. 독자가 많지는 않았지만 그래도 멈추지 않을 동기를 부여해 주었습니다. 점차적으로 글쓰기 능력이 향상되어 이제 내 블로그의 월별 조회수는 최대 20만 회에 달합니다. 그리고 이 모든 것은 내가 해결할 수 있었던 새로운 프레임워크와 문제에 대해 쓰기 시작하기로 결정한 사실 때문입니다. 그리고 나는 필요할 때 내 노트로 돌아갈 수 있도록 이 일을 한 것이지, 많은 청중을 모으고 싶었기 때문에 그런 것은 아닙니다. 블로깅은 처음에는 지루한 일처럼 보일 수 있지만, 시간이 지나면서 멈추지 않는다면 만족감을 느끼기 시작할 것입니다. 배우고 가르치려는 마음으로 글을 쓰기 시작하면 많은 것을 배울 수 있을 뿐만 아니라 많은 사람들의 관심을 끌게 될 것입니다.

노트북을 가져오세요

나는 최근에야 노트북의 열렬한 팬이 되었습니다. 프로그램 형태가 아니라 실제 종이 형태입니다. 어디를 가든지 메모장과 펜을 가지고 다닙니다. 이런 식으로 나는 언제든지 내 마음에 떠오르는 것을 적을 수 있는 기회를 갖게 됩니다. 누군가의 이야기를 들을 때, 버스를 기다릴 때, 저녁에 뭘 만들까 고민할 때 메모를 해요. 나는 또한 읽고 싶은 책, 배우고 싶은 프레임워크, 개인 프로젝트에 추가하고 싶은 기능 목록을 작성하기 위해 메모장을 사용합니다. 그리고 더 중요한 것은 책을 읽을 때 메모를 한다는 것입니다. 왜냐하면 배운 내용을 더 잘 기억하는 데 도움이 되기 때문입니다. 나는 생각나는 모든 것을 적는다. 그리고 어떤 이유로 글을 적지 못하면 잠도 못 잘 정도로 불안해요. 요점은 내가 내 기억을 믿지 않는다는 것입니다. 당신의 기억력이 좋고 일주일 전에 생각했던 모든 것을 완벽하게 기억한다면 아마도 공책이 필요하지 않을 것입니다. 하지만 나처럼 기억하는 데 어려움이 있다면 공책에 메모를 하면 인생이 훨씬 더 나아질 것입니다. 노트북을 최대한 유용하게 만들려면 체계적인 접근 방식이 필요합니다. 노트에 적어 놓은 내용이 사라지지 않을 것이라는 확신을 가져야 합니다. 나중에 필요한 정보를 쉽게 찾을 수 있도록 노트의 처음 두 장을 목차로 분리하세요. 정기적으로 메모를 검토하는 습관을 들이십시오. 예를 들어, 책을 읽으면서 작성한 메모를 생각해 보십시오. 책을 다 읽고 나면 노트를 살펴보고 블로그에 리뷰를 씁니다. 이 텍스트를 읽는 사람은 거의 없지만 리뷰를 작성하는 과정 자체가 읽은 내용에 대해 생각하게 만들고 결과적으로 더 잘 기억하게 만듭니다.

당신의 승리를 문서화하세요

성과를 문서화하는 습관을 들이려면 노트북도 필요합니다. 이미 말했듯이 내 기억력은 나쁘다. 물론 어제 점심에 무엇을 먹었는지는 기억나지만, 복잡한 일에 집중하다 보면 기억력이 눈에 띄게 떨어진다. 그래서 나는 하루가 끝날 때마다 성취한 것을 적어 두는 규칙을 갖고 있다. 우리는 뛰어난 업적에 대해 이야기하는 것이 아니라 단순히 작은 승리에 대해 이야기하고 있습니다. 예를 들어 버그 수정, 새로운 기능 개발을 위한 한 걸음 더 나아가기 등. 아침 운동 완료 등 개인적인 성과도 기록합니다. 저녁에는 하루 동안 내가 한 일의 목록을 만들어 노트에 모두 적습니다. 더 편리한 경우 태블릿에서 이러한 항목을 만들거나 일부 특수 프로그램을 사용할 수 있습니다. 시간이 지남에 따라 더 많은 성과가 있습니다. 나중에 쉽게 찾을 수 있도록 가장 중요한 항목을 표시할 수도 있습니다. 예를 들어, 성과 검토를 준비하기 전에 목록을 살펴보고 관련 성과를 찾아 별도의 목록에 나열합니다. 이렇게 하면 리뷰가 훨씬 더 좋아질 것입니다. 성취 목록은 귀하가 수행한 작업을 전달하는 데도 유용합니다.

중요한 작업을 위한 시간 찾기

하루가 끝나면 오늘은 아무것도 이루지 못했다는 생각이 들 때가 많습니다. 승리(또는 최소한 완료된 작업)를 문서화하는 것도 중요하지만 가장 중요한 것은 해당 작업을 완료하는 것입니다. 한 회의가 다른 회의로 넘어가고 갑자기 근무일이 끝나는 경우가 있습니다. 동료들과 회의를 마친 후 계속해서 업무를 수행하고 싶지만 몸을 풀 시간이 생겼을 때 새로운 화상 회의가 시작됩니다. 그 후에는 이미 컨텍스트를 잃어버렸기 때문에 다시 "워밍업"해야 합니다. 이로 인해 생산성이 저하됩니다. 생산성을 높이는 방법에 대해 배운 것이 있다면 중요한 작업을 위해 시간을 확보하는 것이 중요하다는 것입니다. 중요한 일을 위해 시간을 따로 떼어 두는 습관을 들이지 않는다면, 그 일을 제대로 수행하지 못할 가능성이 높습니다. 당신의 시간은 일상적인 활동으로 소모될 것입니다. 시간 관리는 다양한 방법으로 이루어질 수 있으며, 솔직히 말해서 저는 두 달에 한 번씩 한 가지 접근 방식에서 다른 접근 방식으로 이동합니다. 그러나 요점은 동일합니다. 반드시 완료해야 하는 작업의 경우 일정에서 많은 시간을 확보해야 합니다. 나는 출근 전 아침에 한 시간을 따로 떼어 블로그(또는 다른 사이트)에 기사를 작성합니다. 나는 또한 저녁(아이들이 이미 자고 있을 때)에 한 시간을 따로 떼어 개인 프로젝트를 진행합니다. 나는 현재 아침과 저녁에 처리하고 싶은 작업을 나열하는 요일별 열이 있는 Trello 보드를 가지고 있습니다. 일주일에 한 번씩 나는 이 게시판을 업데이트하고 다음 주에 달성해야 할 일을 거기에 적습니다. 이렇게 하면 다음에 무엇을 해야 할지 고민하면서 귀중한 시간을 낭비할 필요가 없습니다. 또한, 나는 특별한 집중력이 필요한 업무를 위해 매일 2시간의 일정을 할당해 동료들이 이 시간 동안 회의 일정을 잡으려고 하지 않도록 한다. 이 모든 것이 그날 계획된 작업을 처리하는 데 도움이 됩니다. 일반적으로 시간을 얼마나 정확하게 관리하는지는 그다지 중요하지 않습니다. 가장 중요한 것은 원칙적으로 이를 수행하고 습관을 만드는 것입니다. 그렇지 않으면 당신의 하루는 당신에게 별로 중요하지 않은 일로 소모될 것입니다.

막혔으면 잠시 쉬어가세요

개발자는 종종 막다른 골목에 도달합니다. 그리고 이러한 상황은 매우 짜증스럽습니다. 그러한 경우에는 모두가 직장을 쉬라고 조언하는 경우가 많습니다. 그러나 때로는 그러한 권장 사항을 따르는 것이 매우 어렵습니다. "결정이 이미 가까워서 지금은 멈출 수 없습니다." 그리고 지금 당장 휴식을 취하면 그 후에 다시 문제의 본질에 "개입"해야 할 것입니다. 왜 자발적으로 시간을 낭비합니까? 하지만 일에 얽매이면 제대로 생각하지 못하게 되는 것이 사실이다. 당신은 그런 문제에 봉착하는 것이 매우 어리석은 일이라고 생각합니다. 결국 동료들은 이 일을 쉽게 처리할 수 있을 것입니다(또 다른 옵션은 동료들이 항상 더 쉬운 작업을 수행하는 것입니다). 동시에 실제로 문제를 해결하는 방법에 대해 생각하지 않습니다. 잠시 쉬면서 다른 일을 해보세요. 아니면 (더 나은 경우) 내일 이 문제로 다시 돌아오세요. 문제에서 어느 정도 거리를 두는 것은 이전에 시야에서 벗어나 있던 해결책을 볼 수 있게 해줄 것입니다. 아직 이런 일이 발생하지 않았을 수도 있지만 장담합니다. 올바른 해결책이 저절로 떠오르는 경우가 많습니다. 추가 시간이 없다면 작업을 30분 단위로 나누고 중간에 짧은 휴식을 취하는 Pomodoro 방법을 사용할 수 있습니다. 각 단계가 끝나면 현재 해결 모드에 있는지, 아니면 막혀서 다른 작업을 수행해야 하는지 스스로에게 묻습니다. 뽀모도로 방법은 각 단계의 끝을 다른 습관의 유발 요인으로 활용하는 추가적인 이점이 있습니다. 예를 들어, 테이블에서 일어나 스트레칭을 하고, 물을 마시는 습관을 형성하는 것입니다. 이것을 습관의 더미라고 부르기도 합니다. 습관을 쌓아 올리면 좋은 효과를 얻을 수 있기 때문입니다.

마술 지팡이를 찾을 필요가 없습니다

나는 한때 특정 스타일의 소프트웨어 아키텍처에 관한 책을 썼고 "나는 이 스타일을 정말 좋아하고 내 모든 프로젝트에 적용하고 싶습니다!"와 같은 질문이 포함된 이메일을 정기적으로 받았습니다. 어떻게 해야 하나요?" 그러면 내가 뭐라고 대답하는지 아시나요? 모든 문제를 해결하는 데 적합한 하나의 아키텍처 스타일은 없습니다. 소규모 프로젝트가 있는 경우 간단한 CRUD API를 만듭니다. 그리고 모델이 복잡하다면 더욱 복잡한 육각형 아키텍처를 구축하게 됩니다. 그리고 각 개별 컨텍스트에서 마이크로서비스를 생성할 때 수백 가지 아키텍처 스타일 중 하나를 사용합니다. 모든 프로젝트에 사용할 수 있는 보편적인 프레임워크는 없습니다. 단일 프로그래밍 언어나 코딩 스타일이 없는 것과 같습니다. 마술 지팡이를 찾으려고 하지 마세요. 그녀는 존재하지 않습니다. 자신의 의견 뒤에 합당한 주장이 있을 때 자신의 의견을 갖는 것은 좋습니다. “이것이 최고의 건축 양식이다”, “나는 항상 이렇게 한다”는 주장은 가치가 없습니다. 당신의 팀에 항상 자신의 취향을 가지고 있고 "그것이 최고이기 때문에" 자신이 옳다는 것을 증명하기 위해 항상 입에 거품을 물고 있는 개발자가 있다고 상상해 보십시오. 당신은 매우 빨리 피곤해질 것입니다. 그런 개발자가 되지 마세요.
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION