>  기사  >  프로그래머는 앞으로 어떻게 발전할 수 있을까요?

프로그래머는 앞으로 어떻게 발전할 수 있을까요?

步履不停
步履不停앞으로
2019-06-24 13:58:495540검색

프로그래머는 앞으로 어떻게 발전할 수 있을까요?

최근 코딩걸스의 같은 반 친구가 이런 질문을 했습니다.

현재 회사의 일상적인 발전은 하드 모드와 분리되었습니다. 즉 일상적인 비즈니스 글쓰기에 부담이 없고 코드 품질이 좋습니다. 괜찮습니다. 하지만 사업을 작성한 후에는 괜찮을 것입니다. 어떻게 개선되어야 할까요?

사실 저도 1년 넘게 일하면서 이 질문을 던진 적이 있어요. 같은 고민을 해본 사람이 있는지 모르겠습니다. 즉, 현재의 일을 처리할 수 있게 된 후에 어떻게 자신을 향상할 수 있습니까? 이 문제는 성별과는 아무런 관련이 없으며 누구에게나 발생할 수 있습니다. 그래서 나는 아직도 내 경험을 바탕으로 글을 쓰고 싶다. 유사점이 있으면 완전히 정상입니다.

이것은 PHP 커뮤니티입니다. 우리는 PHP를 기반으로 이야기하고 있습니다. PHP를 처음 접하는 많은 사람들, 심지어 코딩이 처음인 사람들이라도 70%는 프레임워크를 먼저 접하게 된다고 생각합니다. 나처럼. Laravel의 가장 좋은 점은 SQL을 작성할 줄 모르는 여학생도 코딩에 빠지게 할 수 있다는 것입니다. 많은 기본 도구와 다양한 기술 튜토리얼 게시물을 사용하면 원리에 대한 심층적인 연구를 기반으로 자체 졸업 프로젝트를 작성하고 코드 세계에 대한 자신감과 존재감을 기록할 필요가 없습니다. 지금부터 시작하세요. 코드의 세계로 들어가 보세요.

그래서 방금 배운 프레임워크 사용 방법과 학교에서 배운 분산되고 이해 가능한 지식을 가지고 작업을 시작합니다. 일을 하고 나면 갑자기 프레임워크에 대한 이해가 충분하지 않다는 것을 알게 되어 다양한 문서를 처음부터 다시 읽기 시작합니다.

 ●  PHP 문서를 읽고 각 기능의 사용법을 이해합니다.

 ● 컴포저 문서, 다양한 트렌디한 패키지로 뽐내기 시작해보세요. (관련 영상 추천 : PHP Composer 영상 튜토리얼)

●  Laravel의 문서, ORM을 사용하여 복잡한 SQL을 작성하는 방법, 제어 역전이란 도대체 무엇일까요? (관련 영상 추천: 2019년 최신 Laravel 영상 튜토리얼 5개에 대한 추천)

 ● Redis 문서, 알아보기, 예약된 작업 대기열 캐싱 및 기타 최적화가 매우 쉽습니다. (추천 과정: redis 비디오 튜토리얼)

● Vue 문서화, 어쩌면 약간의 프론트 엔드 지식을 습득하는 것만으로는 충분하지 않다고 느껴서 다시 시작하게 될 수도 있습니다. (관련 동영상 추천: 2019년 최신 vue.js 동영상 튜토리얼 5개)

회사의 비즈니스가 발전하더라도 팀을 따라가면서 여전히 매우 발전된 일부 기술을 접하게 될 것입니다. 마이크로서비스, 배포, 읽기-쓰기 분리, 마스터-슬레이브 백업 등~ 오픈소스 프로젝트를 작성하려고 시작했지만 출시를 꺼리셨는데요.

제품 동급생의 요구 사항을 빠르게 완료할 수 있기 때문에 점차 자신이 더 멋져지고 있다는 느낌이 들기 시작합니다. 테스트 동급생이 버그를 제기하더라도 이는 요구 사항 문서를 주의 깊게 읽지 않았거나 실수로 잘못 작성했기 때문입니다. 상징. 일이 점점 덜 힘들어지니까 불만이 생기기 시작하고, 이때 회사에서 더 많은 도전을 주지 않으면 이직을 고민하게 됩니다.

그러나 일반적으로 직업을 바꾸는 것은 작업 환경, 조직, 프레임워크를 변경하거나 추가 언어를 관리하는 것 이상입니다. 이 모든 것에 적응하면 다시 지루함을 느끼기 시작할 것입니다. 반복적인 초과근무에 지쳐 업무가 지루해지며 결국 주말에도 코드를 작성하고 싶지 않게 됩니다. 악기 배우기, 사랑에 빠지기, 고양이 키우기, 깃발 깨달기 등 시간을 보내기 위해 변화를 줄 수도 있을 것 같아요~~

이게 정말 좋은가요? 스스로에게 이렇게 묻기 시작합니다. 많은 일을 할 수 있어도 할 수 없는 일이 여전히 많습니다. 당신은 당신보다 더 크다고 느끼기 시작하고, 당황하기 시작하고, 혼란스럽고 상실감을 느끼기 시작합니다. 그래서 주변 사람들에게 어떻게 해야 하는지 물어보기 시작합니다. 그러나 누군가가 당신에게 직업을 바꾸거나 직업을 바꾸라고 제안하면 당신은 그렇게 하고 싶지 않을 것입니다. 사랑하기 때문인가요, 아니면 무엇을 해야 할지 모르기 때문인가요? 아무튼~ 다음 내용을 통해 같은 궁금증을 갖고 계신 분들에게 어느 정도 답을 드릴 수 있었으면 좋겠습니다.

질문하기

무슨 질문인가요?

● 코드 품질이 정말 괜찮나요? 코드 품질을 어떻게 측정합니까? 인터페이스의 견고성을 보장하기 위해 무엇을 할 수 있습니까? 당신이 작성한 인터페이스가 얼마나 많은 요청과 동시성을 견딜 수 있는지 알고 있습니까? 수백만 개의 데이터를 처리할 수 있지만 수천만 또는 페타바이트의 데이터는 어떻습니까?

● 일상적인 비즈니스 글쓰기는 스트레스가 없나요? 기능 테스트를 작성할 때마다 보고된 평균 결함 수를 세어 본 적이 있습니까? 당신이 작성한 기능을 얼마나 많은 사람들이 사용하고 있는지 아시나요? 당신이 작성한 기능은 다른 사람들이 쉽게 사용할 수 있나요? 프로덕션 환경에서 작성한 함수가 "불가능한" 더티 데이터를 생성한 적이 있습니까?
●예를 들어 어느 날 시스템이 갑자기 10분 넘게 충돌이 발생하자 CTO와 여러 기술 팀 리더가 문제 해결을 위해 개입했습니다. 왜 무너졌는지 이해하려고 노력한 적이 있나요? 어떻게 해결하나요? 어느 정도 이해되시나요? (예를 들어, 느린 SQL이 있다면 느린 SQL로 인한 시스템 막힘 문제는 어떻게 해결할 것인가? 느린 SQL은 어떻게 발생하는가? 일상생활에서 느린 SQL을 피하려면 어떻게 해야 할까? 이를 기반으로 느린 SQL임을 어떻게 알 수 있는가? 크래시?)
 ●  프레임워크 문서를 꼼꼼히 읽어보세요. 충분할까요? Laravel의 프레임워크는 왜 이런 식으로 설계되었나요? 왜 우리는 모두 좋다고 말하나요? 다른 프레임워크와 어떻게 다른가요? 기본 코드를 살펴 본 적이 있나요?
●PHP 함수의 효율적인 작동을 보장하기 위해 어떤 종류의 알고리즘이 사용되나요? 이해해 본 적 있나요?

하드 모드에서 나오는 건 일이 쉬워서일까, 아니면 스스로 이지 모드에 들어서서 그런 걸까?

적극적으로 행동하세요

위에 제기된 무작위 질문을 바탕으로 더 많은 질문을 확장하고 학습해야 할 많은 콘텐츠를 나열할 수 있습니다.

● MySQL 최적화 방법을 정말 알고 계시나요? 최적화의 원리는 무엇입니까? 일부 SQL 문의 논리는 동일하지만 성능 면에서 큰 차이가 나는 이유는 무엇입니까? 프레임워크는 데이터베이스에 어떻게 연결되며 트랜잭션은 어떻게 처리됩니까? 인덱스를 추가하면 쿼리가 더 빨라지는 이유는 무엇입니까? 인덱스를 더 잘 활용하는 방법은 무엇입니까? 업무별 주문은 어떻게 하나요?

● Nginx 사용법을 정말 알고 계시나요? 간단한 배포 프로젝트를 사용하는 것 외에도 로드 밸런싱을 달성하기 위해 역방향 프록시를 설정하는 방법을 알고 계십니까? 도메인 간 및 캐싱 문제를 처리하는 방법은 무엇입니까?
● 당신은 리눅스에 능숙합니까? 모든 명령이 사용됩니까? Linux 시스템에 무정전 프로세스와 좀비 프로세스가 많은 경우 어떻게 해야 합니까? 시스템 CPU 병목 현상이 발생한 위치를 신속하게 분석하는 방법은 무엇입니까? Linux 메모리는 어떻게 작동합니까? 프로세스 전환 과정은 무엇입니까? 디스크 I/O 성능을 최적화하기 위한 아이디어는 얼마나 있습니까? tcpdump와 Wireshark를 사용하여 네트워크 트래픽을 분석하는 방법은 무엇입니까? DDoS 공격으로 인한 성능 저하를 완화하는 방법은 무엇입니까? 서비스 처리량이 크게 감소했습니다. 이를 분석하는 방법은 무엇입니까?

다음에는 웹 프로토콜, Redis 등 기본 업무 능력, 데이터 구조, 알고리즘, 디자인 패턴 등의 내부 능력과 정신적 방법 등 자세히 나열하지 않겠습니다.~ 정말로 그렇지 않다면 자신에게 어떤 부족한 부분이 보완되어야 하는지 알고, 자신이 선호하는 직위에 대한 선호 기업의 채용 이력서를 살펴보세요~

질문을 하고 자신의 부족한 점을 파악하세요. 다음 단계는 스스로 채우는 방법을 찾는 것입니다. 위 질문에 대한 답을 알고 계시나요? 지금 당장 Baidu 답변을 복사하여 붙여넣고 싶은 충동이 있으신가요? 그렇다면 답을 찾아보세요!

자원 공유 시대에 학습 비용은 거의 0이라고 할 수 있습니다. 당신이 물어볼 수 있는 거의 모든 질문은 누군가가 묻고 대답한 것입니다. 좀 더 체계적이고 심층적인 이해가 필요하다면 수많은 책, 동영상, 강좌, 온라인 자료가 있습니다. 일단 사면 가서 확인하고 초과근무로 번 돈을 낭비하지 마세요. 어쨌든 나는 권력 있는 사람들이 책을 읽지 않는다고 말하는 것을 본 적이 없습니다.

●지식에 돈을 지불하는 시대에 모든 주요 커뮤니티는 이제 관련 기술에 대한 튜토리얼을 어느 정도 운영하고 있습니다.
●● Geeks와 MOOC에도 기본 원리에 대한 심층적 이해를 제공하는 좋은 강좌가 많이 있습니다
●● What 관련 지식을 보충하고 싶다면 읽어야 할까요? 정말 책을 추천할 사람이 없다면 Zhihu

에 가서 글을 써보세요

생각 없이 배우는 것은 낭비이고, 생각 없이 배우지 않는 것은 위험합니다. 지혜롭다는 것은 배운 것을 적용하는 것입니다. 지식을 읽고 이해한 것을 적어 보면, 자신이 그것을 이해할 수 있고, 다른 사람도 이해할 수 있고, 이해하지 못하는 사람에게 설명할 수 있다면, 정말 이해해요! 다시 말하지만, 나는 자신의 지식과 통찰력을 공유하지 않는 위대한 사람을 본 적이 없습니다. 그러니 책을 읽고 동영상 강좌를 수강한 후에는 꼭 억지로 글을 써보시기 바랍니다. 지식 포인트, 읽고 난 후의 생각 등을 메모하세요~

서클에 참여하세요

사람은 빨리 갈 수 있지만, 여럿이 함께하면 더 멀리 갈 수 있습니다. 개인적인 경험으로 볼 때, 나의 기술적인 성장은 주변 사람들의 도움과 불가분의 관계에 있습니다. 제 우상인 안정차오(An Zhengchao) 때문에 라라벨 차이나에 오게 되었고, 웹마스터인 Summer 님을 만났고, 그 후 커뮤니티에서 더 많은 사람들을 알게 되었습니다. 거듭된 교류와 토론을 통해 나는 내 부족한 점을 알게 되었고, 열심히 연습했다. 또한 내 질문에 답해줄 수 있는 사람이 누구인지, 나와 함께 토론할 의향이 있는 사람, 나와 함께 일하며 서로를 감독하고 함께 성장할 사람이 누구인지도 알았다. 그 동안 저와 함께 해주신 분들, 끈기 있게 도와주신 분들, 시간을 내어 조언을 해주신 분들께 정말 감사드립니다.

그러니 적극적으로 서클에 가입하거나 자신만의 서클을 시작해 보세요. 도움을 요청하거나 다른 사람을 도와주세요. Youdao는 가르치고 배우며, 상호 지원과 성장을 의미합니다. 한 사람에게서는 배울 수 없지만 여러 사람의 말을 들으면서 뭔가를 얻어야 합니다. 자신만의 기술 서클을 구축하고 배울 수 있는 훌륭한 사람들을 찾는 데 시간을 투자하세요. 무엇이 그렇게 어려운가요?

여담

여기에 여러 학습 자료를 나열한다고 해서 그 자료가 귀하에게 유용할 것이라고 보장할 수는 없습니다. 게다가 학습 자체에는 끈기, 자기 훈련, 방법 등의 라벨이 붙어 있어 현실적으로 우리를 3, 6, 9단계로 나눌 수 있습니다. 프로그래머에게는 지식을 업데이트하는 속도가 중요합니다. 우리... 항상 예상치 못한 일이죠. 속담처럼 길은 길고 멀다. 아무리 오랫동안 일해도 자신을 향상시키는 방법에 대해 항상 생각하는 것은 인생에서 필수 과정입니다.

필요하신 경우 게시물 아래에 메시지를 남겨주시면 저 또는 커뮤니티의 열정적인 반 친구들이 여러분에게 유용할 수 있는 우리가 배운 강좌와 책을 공유해 드리겠습니다. 예를 들어, 읽을만한 인터넷 관련 책은 무엇입니까? 커뮤니티 자체가 큰 서클이므로 잘 활용하십시오!

또한 프로그래머의 성장에는 기술뿐만 아니라 직장, 경영, 사교계 등도 포함되어야 합니다. 기회가 된다면 또 다른 "경력 장"을 쓰자! (아직 자격이 안되서 ㅋㅋㅋ)

글작성자 : 조커린리님 감사합니다!

추천 관련 기사:

"훌륭한 PHP 엔지니어로서 이러한 Linux 명령을 모두 마스터하셨나요? 》

《관리하기 어려운 PHP 코드를 작성하는 방법을 단계별로 가르쳐드립니다》

성명:
이 기사는 JokerLinly에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제