스포트라이트

비슷한 제목

소프트웨어 엔지니어, 애플리케이션 개발자, 소프트웨어 설계자, 컴퓨터 프로그래머, 게임 프로그래머, 게임 소프트웨어 개발자

작업 설명

소프트웨어 개발자는 컴퓨터 프로그램의 배후에 있는 창조적인 마음입니다. 일부는 사람들이 컴퓨터 나 다른 장치에서 특정 작업을 수행 할 수있게 해주는 응용 프로그램을 개발합니다. 다른 사람들은 장치를 실행하거나 네트워크를 제어하는 기본 시스템을 개발합니다.

경력의 보람있는 측면
  • 선택한 회사 내에서 성장할 수 있는 능력
  • 프로젝트를 담당하고 다른 사람들에게 영향을 줄 수있는 능력
  • 매일 기술 지식 확장
  • 회사의 성장에 직접적인 영향을 미칠 수있는 능력
$102,280
타이틀
2016 채용
1,256,200
2026년 예상 고용
1,558,700
인사이드 스쿱
직무 책임
  • 사용자의 요구를 분석한 다음 이러한 요구를 충족하는 소프트웨어를 설계, 테스트 및 개발합니다.
  • 고객의 기존 프로그램 및 시스템에 대한 소프트웨어 업그레이드 권장
  • 응용 프로그램 또는 시스템의 각 부분을 설계하고 조각이 함께 작동하는 방법을 계획하십시오.
  • 프로그래머에게 응용 프로그램에 필요한 소프트웨어 코드를 보여주는 다양한 모델 및 다이어그램(예: 순서도)을 만듭니다.
  • 소프트웨어 유지 관리 및 테스트를 통해 프로그램이 계속 정상적으로 작동하는지 확인
  • 응용 프로그램 또는 시스템의 모든 측면을 향후 유지 관리 및 업그레이드를 위한 참조로 문서화합니다.
  • 다른 컴퓨터 전문가와 협력하여 최적의 소프트웨어를 만들 수 있습니다.

다양한 유형의 개발자

  • 백엔드 개발자 - 웹 사이트의 전반적인 기술 구축을 담당합니다.
  • 프런트 엔드 개발자 - 웹 사이트의 모양 (레이아웃 및 그래픽)을 담당합니다.
  • 웹마스터 - 웹 사이트를 유지 관리하고 최신 상태로 유지
필요한 기술
  • 농도
  • 창조성
  • 고객 서비스 기술
  • 세부 지향
  • HTML, 멀티미디어 출판 도구 및 프로그래밍 언어에 대한 철저한 이해
  • 융통성
  • 빠른 학습자
  • 변화에 빠르게 적응할 수 있는 능력
기대와 희생
  • 기대: 즉석에서 학습하고 품질과 유지 관리 가능한 코드를 제공할 수 있는 능력
  • 희생 : 구멍을 채우고 다른 팀 구성원을 도와야하며, 특히 제품 회사의 불분명 한 요구 사항을 다룰 때 자신의 책임 위에
다양한 유형의 조직
  • 기술 회사 (대기업이든 신생 기업이든 상관 없음) : 즉 Google, Facebook
  • 프로그래밍 방식으로 수행할 수 있는 작업을 처리하는 조직(점점 더 많은 조직이 이 설명에 적합함)
  • 자체 시작 만들기 옵션
  • 프리랜서가 여러 회사를 위해 개발 될 수 있습니까?
  • 개발 상점
현재 동향
  • 소프트웨어/애플리케이션/시스템을 날마다 더 스마트하게 만드는 인공 지능
  • 기계가 인간처럼 생각하도록 돕는 통합 기계 학습
  • 이 소프트웨어의 예: 구글 어시스턴트, 시리, 알렉사
  • 빅 데이터
  • 오픈 소스 소프트웨어 개발: 오픈 소스의 오리지널 소스 코드는 쉽게 사용할 수 있으며 재배포 및 수정될 수 있어 다양한 분야에서 혁신의 열쇠가 됩니다. 오픈 소스를 공개하면 개별 비즈니스를 육성 할뿐만 아니라 전체 산업에 진화하고, 만들고, 때로는 낭비를 낳습니다. 오픈 소스를 사용하고, 프로젝트를 오픈 소스로 만들고, 오픈 소스 커뮤니티의 적극적인 일원이되는 것은 기술을 따라 잡고 더 큰 커뮤니티의 일원이되는 데 필요한 방법입니다. [www.oreilly.com]
  • 인프라 중단 및 재조립: 이러한 새로운 프로그램을 통해 소프트웨어 엔지니어는 XaaS, 서버리스 아키텍처, 분산 시스템, 컨테이너 및 마이크로 서비스와 같은 "내부 기관"이 제대로 작동하는지 여부를 걱정하지 않고 비즈니스 성장에 집중할 수 있습니다. 컴퓨팅 성능을 위해 OpenStack과 같은 타사 서비스를 활용하고, 반응형 마이크로 서비스를 구축하여 아키텍처의 세그먼트를 구획화하고 집중하여 훨씬 더 탄력적이고 확장 가능한 환경을 만들고, Docker 및 Kubernetes와 같은 클라우드 네이티브 도구를 사용하여 소프트웨어를 지속적으로 배포합니다. [www.oreilly.com]
  • 기계 학습: OpenAI(Elon Musk), Watson(IBM), TensorFlow(Google) 및 CNTK(Microsoft)는 새로운 흥미 진진한 제품(Alexa)과 패러다임(음성 기반 앱) 및 인프라 자동화를 개발하여 기계 학습이 공식적으로 다시 가열되고 있습니다. [www.oreilly.com]
  • 고객 우선 디자인: "고객을 최우선으로 생각하면 매번 성공으로 이어집니다"[www.oreilly.com]
이 직업에 종사하는 사람들은 어렸을 때 어떤 일을 즐겼습니까?
  • 게임 즐기기 / 문제 해결
  • 과학에 관심
  • 프로그래밍에 대한 열정
  • 새로운 아이디어를 발견하고 가능한 한 많은 지식을 습득하려는 욕구
  • 자주 사용하는 라이브러리
  • 아이디어, 발견, 책에 대해 몇 시간 동안 친구들과 이야기하는 것을 즐겼습니다.
  • 기술 개발, 브레인 스토밍, 독서 및 환경 인식에 대한 관심

"나는 게임에 상당히 관심이 많았고, 결국 그것이 요인이라고 확신하지만, 사실 나는 어렸을 때 과학에 더 많이 빠져있었습니다. 나는 전환하기 전에 화학 공학 대학에 다녔다. 프로그래밍에 대한 불꽃과 열정은 아마도 고등학교 프로그래밍 과정에서 제시된 문제를 철저히 즐겼을 뿐만 아니라 시뮬레이션 된 어항을 만드는 복잡성과 같은 논리적 인 방식으로 분해했을 것입니다. " Leon Ho, OpenX의 소프트웨어 엔지니어

교육 및 훈련 필요
  • 소프트웨어 엔지니어는 컴퓨터 과학 또는 관련 연구 분야의 학사 학위를 시작할 수 있습니다.
  • 고급 직위에는 석사 학위가 필요할 수 있습니다.
  • 소프트웨어 엔지니어 인턴십은 실제 경험을 쌓으면서 학습에 매우 유용합니다.
  • 다음과 같은 수많은 소프트웨어 엔지니어 관련 인증서를 사용할 수 있습니다.
    • 스프링보드 소프트웨어 엔지니어링 부트캠프
    • 인증된 보안 소프트웨어 라이프사이클 전문가
    • 전문 소프트웨어 개발자 인증
    • CIW 웹 개발 전문가
    • 오라클 인증 마스터
    • Microsoft Certified Azure Solutions Architect
  • O*Net은 액세스, 분석, 애플리케이션 서버, 백업, 비즈니스 인텔, 클라우드 기반 데이터 액세스, 통신 서버, 구성 관리, 콘텐츠 워크플로, 데이터베이스 관리, 데이터 마이닝, 개발 환경, 엔터프라이즈 리소스 계획 등과 같은 여러 소프트웨어 유형을 포함하여 필요한 다양한 기술 기술을 나열합니다.
고등학교/대학교 때 해야 할 일
  • 퍼즐을 풀고, 체스 및 기타 전략 게임을하고, 읽으십시오.
  • 일상 생활에서 사물이 어떻게 작동하는지 분석하십시오. 예: 중력
  • 데이터 구조 및 알고리즘과 함께 문제에 접근하고 논리적으로 해결하는 방법을 탐구하기 시작하십시오.
  • 사이드 코드 프로젝트는 항상 플러스입니다.
  • 일반적인 수업 주제에는 고급 수학, AP 미적분학, AP 통계, AP 물리학, 공학, 물리학 및 프로그래밍, 데이터 구조, 알고리즘 소개, 운영 체제, 컴퓨터 아키텍처, 인간 - 컴퓨터 상호 작용 및 이산 수학의 기초와 같은 많은 컴퓨터 과학 과정이 포함됩니다.
  • React, Angular, Express 및 Rails와 같은 학습 프레임 워크
  • 소프트웨어 엔지니어에게 널리 사용되는 프로그래밍 언어는 Java, Python, JavaScript, C++ 및 Scala입니다.
  • 학사 학위에 그만두고 일자리를 신청할지 결정하거나 석사 학위를 먼저 누르십시오.
  • 구직 전에 완료하려는 관련 자격증에 대한 작업
  • 사례 연구를 통해 귀하의 작업을 선보일 포트폴리오 웹 사이트 구축
  • 정보를 교환하고 동기를 유지할 수있는 학교 컴퓨터 클럽에 가입하십시오.
  • 비디오, 책 및 사이드 프로젝트를 통해 자신의 시간에 배우십시오.
  • 소프트웨어 엔지니어 인턴 직무에 지원하여 실제 경험을 쌓으십시오.
  • 학업 및 업무 이정표를 노크 아웃하면서 초안 이력서 작업
1차 직장에 도착하는 방법
  • 교사에게 권장 사항 요청
  • 프리랜서 기회 활용
  • 기술 회사의 채용 공고에 지원
  • 다양한 산업 실험
  • 명확한 비전과 사업 계획으로 자신의 창업을 시작하십시오 (자금 조달을 위해 Kickstarter를 사용할 수 있음)
  • 소셜 미디어를 사용하여 업계 연결 만들기
  • Monster, Indeed, Glassdoor, Zippia와 같은 작업 포털뿐만 아니라 Machine Hack, MLconf Job Board, Stack Overflow, AngelList 및 DataJobs와 같은 IT 관련 사이트에 프로필을 구축하십시오. LinkedIn도 사용하는 것을 잊지 마십시오!
  • 고급 역할 자격을 갖출 수있는 충분한 경험을 얻을 때까지 주니어 직책을 신청하십시오.
  • 구인 광고에 사용 된 키워드에 주목하십시오. 이력서에 통합하십시오.
  • 소프트웨어 엔지니어 이력서 템플릿에서 구문에 대한 아이디어를 확인하십시오.
  • 연락처 정보를 제공하기 전에 사전에 잠재적 인 참조를 물어보십시오.
  • 소프트웨어 엔지니어 인터뷰 질문을 읽고 인터뷰 준비
  • 인터뷰 중에 자신이되어 당신의 성격을 빛나게하십시오! 기술적 역량도 중요하지만 문화도 적합하다. 당신은 당신과 당신이 신청하는 회사가 서로 잘 일치하는지 확인하고 싶습니다.
경쟁력을 유지하고 게임에 참여하는 방법
  • 새로운 기술에 대해 읽어보기
  • 직업에 국한 될 필요가 없으며 문제 해결 기술을 연마하는 것이 될 수 있습니다.
  • 적응하는 능력은 정말 중요합니다.
  • 빠르게 선회할 수 있는 밝은 마음

요구 사항:

  • 직업 학교 교육, 관련 실무 경험 또는 준학사 학위
  • 이전의 업무 관련 기술, 지식 또는 경험 ne 또는 이년 간의 교육에는 실무 경험과 숙련 된 근로자와의 비공식 교육, 즉 인정 된 견습 프로그램이 포함됩니다.
  • 목표를 달성하기 위해 다른 사람들을 조정, 감독, 관리 또는 훈련시키는 강력한 의사 소통 및 조직 기술, 즉 수력 전기 생산 관리자, 여행 가이드, 전기 기술자, 농업 기술자, 이발소, 보모 및 의료 보조원
계획 B
  • 정보 보안 분석가
  • 기술 회사의 설립자
  • 특허 대리인
  • 변리사
인포그래픽

인포그래픽을 다운로드하려면 여기를 클릭하십시오.

소프트웨어 개발자 글라데오그라픽스

뉴스 피드

풋힐의 프로그램

온라인 과정 및 도구