IBM 메인프레임 기술자가 업계에 처음 입사할 때 급여는 얼마입니까?
1. 엔터프라이즈 컴퓨팅의 방향에 대해
엔터프라이즈 컴퓨팅은 좀 더 세련되고 듣기 좋은 용어로, 주로 ERP 소프트웨어(Enterprise Resource)와 같은 엔터프라이즈 정보 시스템을 지칭합니다. 기획), CRM 소프트웨어(고객관계관리), SCM 소프트웨어(공급망관리, 즉 물류소프트웨어), 은행증권 소프트웨어, 금융소프트웨어, 전자상거래/정부업무(각종 홈페이지 포함), 데이터웨어하우스, 데이터마이닝, 비즈니스 인텔리전스 및 기타 기업 정보 관리 시스템
기업 컴퓨팅 분야에서 인재에 대한 수요는 항상 가장 큽니다. 왜냐하면 이 분야는 컴퓨터 응용 프로그램이 가장 많기 때문입니다.
(1) 인재 수요는 엄청나며, 엔터프라이즈 컴퓨팅에 종사하는 기업은 대부분의 IT 기업을 차지합니다. 해당 직업에 대한 전문 지식이 없는 한 일반적으로 이 분야에서 일자리를 찾을 수 있습니다.
(2) 이 분야의 진입 장벽은 상대적으로 낮습니다(소프트웨어 기술이 그다지 깊지 않은 경우 이 분야를 고려할 수 있음)
(3) 이 분야의 대기업 상대적으로 대기업은 돈을 많이 벌고 싶어하기 때문에 엔터프라이즈 컴퓨팅 사업에 더 많은 에너지를 소비합니다. 예를 들어 CitiCorp, HP, IBM, SAP, NEC 및 기타 정식 대학 소프트웨어 학교 학생들이 현재 인턴을 하고 있는 회사는 모두 회사입니다. 이 분야에서. 앞으로 대기업에서 비교적 안정적인 일자리를 찾고 싶다면 이 분야에서 일할 가능성이 훨씬 더 높아질 것입니다.
그러나 이 분야에서 일할 때의 단점도 분명합니다.
이 분야의 진입 문턱은 상대적으로 낮지만 이 분야의 인재에 대한 수요는 가장 크지만 경쟁업체는 앞으로는 더 많아질 것입니다. 그가 IT 전공이 아니더라도 몇 달 간의 놀라움 이후에도 여전히 잘 지내고 있다는 것을 알게 될 것입니다. 특히 당신이 나이가 들수록 당신 뒤의 젊은 사람들이 당신의 수준을 따라잡기가 쉽다는 것을 알게 될 것입니다. 해외에서 일하게 된다면 이 분야에 종사하는 사람들이 더 많고, 전문가들도 많다는 것을 알게 될 것입니다. 물론, 이 분야에서 다년간의 기업 경험을 갖고 더 높은 수준(예: 소프트웨어 아키텍처 설계 능력)에 도달했다면 귀하의 가치는 항상 높을 것입니다. 이 분야 국내 인재분야의 가장 큰 문제는 경험이 풍부한 전문가가 너무 적고 피상적인 지식을 가진 사람이 너무 많다는 점이다.
엔터프라이즈 컴퓨팅 분야에서 가장 중요한 기술 기반 기술 과정은 (1) J2EE 아키텍처 및 프로그래밍 (2) 대규모 데이터베이스 시스템(예: Oracle) (3) UML 기반 시스템 분석 및 설계. 다른 중요한 기술이 있다면 XML 및 웹 서비스 기술도 포함될 수 있습니다. 이러한 영역을 잘 이해하고 있다면 취업에 대한 걱정은 없을 것입니다. 그중에서도 J2EE가 특히 중요합니다. 현재 J2EE는 엔터프라이즈 컴퓨팅 소프트웨어 개발을 위한 가장 중요한 플랫폼이자 일반 대학 소프트웨어 학교의 가장 중요한 과정 중 하나가 되었습니다. 이 과정은 선택 과목으로만 사용할 수 있지만, 일반 대학 소프트웨어 학교의 학생들이 장래에 어떤 방향으로든 J2EE 과정을 수강하면 최소한 취업을 준비할 수 있기를 바랍니다. 미래. 임베디드나 다른 분야에서 일하고 싶은 학생들도 J2EE를 배워야 합니다. 미래에 엔터프라이즈 컴퓨팅 분야에서 일하고 싶지 않더라도 J2EE는 현재 가장 중요한 플랫폼 중 하나입니다. , J2EE를 이해하는 것이 필요합니다. 일반 지식 과정과 같습니다. 엔터프라이즈 컴퓨팅과 밀접하게 관련된 다른 기술로는 Dot Net 아키텍처 및 프로그래밍, 소프트웨어 테스트 기술, 소프트웨어 구성 관리가 있습니다. 이 분야의 상위 수준 기술에는 데이터 웨어하우스 기술, 구성 요소 및 미들웨어 기술, 디자인 패턴 등이 포함됩니다. 통신 프로토콜 분석, 네트워크 프로그래밍, 유닉스 시스템 관리 등의 과목도 관련 과목이다. 이번 학기에는 레벨 02에게 제공되는 엔터프라이즈 컴퓨팅 과정이 많지 않습니다. 그들은 주로 J2EE, Oracle/MSSQL, UML과 같은 엔터프라이즈 컴퓨팅 분야에서 가장 중요한 기술 기반 기술 과정을 이수했습니다. 많은 학생들이 더 깊이 배웠으며 앞으로는 이러한 기술을 사용할 것입니다. 다음 학기에는 이 분야의 XML 및 웹 서비스 기술, 소프트웨어 구성 관리 등에 대한 추가 과정을 제공할 예정입니다. 이번 학기에는 엔터프라이즈 컴퓨팅 분야에 대한 강좌가 많지 않지만 여가 시간에 J2EE, DB, UML 및 기타 기술을 더 깊이 탐구해야 합니다. 아무리 강의를 듣는 것만으로는 소용이 없습니다. 가장 중요한 것은 스스로 공부하는 것입니다. J2EE 하나만으로도 충분히 씹어먹을 수 있을 정도로 광범위하고 심오합니다. 계속해서 공부하다 보면 관련 지식(EJB, XML, 웹 서비스, 디자인 패턴 등)이 아직 많이 남아 있다는 것을 알게 될 것입니다. .
엔터프라이즈 컴퓨팅에 종사하는 인재는 많지만 다음과 같은 엔터프라이즈 컴퓨팅 분야는 국내외 모두 인재가 부족합니다.
(1) SAP를 중심으로 한 대규모 ERP 시스템 마스터 SAP Basis(시스템 관리), SAP ABAP(프로그래밍) 또는 SAP 기능 모듈 구현(특히 금융 모듈 FI 구현)을 포함한 시스템. SAP 컨설턴트는 가장 비싸고 찾기가 매우 어렵습니다. 다른 대형 ERP 시스템, PeopleSoft, Oracle Finacial, J.D. Edward, Siebel 및 기타 대형 ERP 소프트웨어 시스템을 마스터하는 사람들도 매우 가치가 있습니다.
이 분야의 사람들이 매우 귀중한 이유는 주로 이러한 소프트웨어가 매우 전문적이고 규모가 매우 크기 때문에 D 버전을 배우기가 어렵기 때문입니다. SAP를 사용하는 것)을 사용할 여유가 있어야 하며, 마스터하려면 실무 경험이 있어야 합니다. 누구나 쉽게 접근할 수 있는 소프트웨어라면 일반적으로 이 분야에 인력이 부족하지 않을 것입니다. 앞으로 이러한 대규모 ERP 소프트웨어 시스템을 배울 수 있는 기회가 생긴다면 평생의 황금 같은 직업이 될 것이므로 주저하지 말고 잡으시길 권합니다. 외국에서는 SAP를 아는 사람이 특히 귀중합니다. 희귀한 것이 더 가치 있다는 것은 언제나 깨지지 않는 진실입니다. SAP의 가치는 ERP 소프트웨어일 뿐만 아니라 그 안에 구현된 현대적인 기업 관리 개념(예: 주문 요구 사항에 따라 원자재 조달 및 생산 계획을 자동으로 배열하는 등)에도 있습니다. 일반적으로 Fortune 500대 기업은 많은 국내 기업처럼 처음부터 ERP 시스템을 설계하기 위해 J2EE를 사용하지 않을 것입니다(어떤 종류의 인력 투자가 필요하며 설계된 시스템이 어떻게 완벽할 수 있습니까?). 그들은 확실히 성숙한 ERP 시스템을 사용할 것입니다. SAP 소프트웨어처럼요. SAP를 감당할 수 없는 기업은 J2EE를 사용하여 ERP 시스템을 설계할 수 있습니다.
(2) S/390 호스트, MVS 운영 체제, JCL 작업 제어 언어, COBOL 프로그래밍 언어, DB2 관계형 데이터베이스 또는 IMS 계층형 데이터베이스, CISC 미들웨어 트랜잭션 등 IBM 메인프레임 기술을 마스터한 사람 제어 시스템 및 기타 IBM 메인프레임 관련 기술. 국내 상위 5개 은행과 대부분의 외국계 은행은 백엔드 시스템에 위의 플랫폼을 사용합니다. IBM 메인프레임은 절대 다운되지 않는다고 하며 플랫폼은 상대적으로 폐쇄적(이것이 가장 안전함)이므로 24*7 환경에서 지속적인 운영이 필요한 이러한 핵심 애플리케이션(미션 크리티컬 애플리케이션이라고 함)은 모두 IBM 메인프레임을 사용합니다. 이 분야의 인재가 부족한 이유는 메인프레임 컴퓨터를 아는 사람은 모두 노인(1990년대 이전에 IT 업계에 종사했던 사람들)이기 때문이다. 전세계적으로 갓 졸업한 IT 졸업생들이 IBM 메인프레임 컴퓨터를 배우는 것은 불가능하다. 상대적인 "오래된" 기술), 이를 보충할 새로운 인력이 없으며 은행 시스템을 유지해야 하며 IBM 메인프레임에 대한 절대적인 수요가 있음에도 불구하고 은행은 계속해서 새로운 비즈니스(예: 새로운 예금 유형)를 개발해야 합니다. 재능은 크지 않고 상대적으로 일정합니다. 은행이 이 분야에서 새로운 사람을 찾는 것은 어렵습니다. 만일 인재를 찾기가 쉽다면 Citisoft는 인턴을 교육하는 데 그렇게 많은 돈을 쓰지 않을 것입니다. (작년에 우리는 20명 이상을 교육했습니다.) , 회사에서 교육비로 수십만 위안을 썼다고 들었습니다.) 나중에 일자리를 찾기 위해 해외에 온다면 IBM 메인프레임 작업 방법을 아는 것이 일자리를 찾는 가장 좋은 분야 중 하나일 수 있습니다. 대형 은행과 같은 좋은 일자리를 찾을 수 있습니다. 저는 이전에 컴퓨터 과학을 가르쳤습니다. 졸업 후 메인프레임 개발에 종사하는 90-94 전공 학생들은 현재 해외의 아주 좋은 회사에서 일하고 있습니다. 여러 나라의 회사에서 뛰어다니고 마치 평지를 걷는 것 같은 느낌입니다.) 사실 가장 행복한 동급생은 씨티소프트웨어에서 IBM 메인프레임 뱅킹 소프트웨어를 작업하는 친구들이라고 생각합니다. 일반 대학교 소프트웨어 대학의 2000급 2+2 동급생이 대학원 과정을 포기하고 씨티 소프트웨어에서 일하기로 결정했습니다. 그녀는 졸업하기 전에 회사에서 열심히 일했습니다. 그녀를 해외 프로젝트 개발에 참여시키기 위해 보냈고 프로젝트의 중추가 되었습니다. 그녀의 원래 선택은 완전히 옳았다고 생각합니다. (01학년 여학생도 방금 자발적으로 보험을 포기했습니다. 그녀는 일할 기회를 얻었습니다. 실제로 Citi Software처럼 직원들이 직장 내 대학원 학습을 적극적으로 준비하고 장려하는 현명한 회사는 많지 않습니다. 대학원 공부도 좋은 선택입니다. 원하는 인턴십 기회를 잃지 않고 선택할 수 있으며, 둘 다 선택할 수 있습니다.) 공부의 궁극적인 목표는 앞으로 해외에서 취업하는 것입니다. 당신이 가지고 있는 졸업장과 외국 기업은 결코 돈을 낭비하지 않을 것입니다. 우리는 현장에서 업무 경험이 있고 즉시 시작할 수 있는 사람들만 모집하고 제한된 시간 내에 프로젝트를 완료하기 위해 최소한의 비용을 사용합니다. 인건비가 저렴하기 때문에 기업에서는 전혀 필요하지 않더라도 고학력 인재를 많이 채용하는데, 국내 인력이 너무 저렴하면 인재에 더 많은 돈을 투자하지 않겠습니까? 외관이 더 좋아질 것입니다.
.(3) 현재 중국에서는 데이터 웨어하우스 기술을 마스터하는 사람이 거의 없습니다. 외국에서는 ORACLE의 데이터 웨어하우스 도구가 가장 주류가 되어야 합니다. 특별한 데이터웨어 하우스를 알고 있습니다.
우리 반 친구들은 이제 열정적이고 최신 기술을 추구하는 것을 좋아합니다. 뭐, SAP나 메인프레임을 공부하는 분들은 결국 기회가 많지 않잖아요. 앞으로 경쟁자가 적고 스스로 하고 싶다면 어떤 능력이 해외 취업에 가장 좋은지(소프트웨어 관련 일을 하는 사람은 해외에서 일하거나 이민하는 게 가장 쉽죠. 지금은 하기 싫을 수도 있겠지만 저는) 수년 동안 일한 후 많은 학생들이 해외에서 경력을 쌓고 싶어할 수 있다고 믿습니다.) 미래의 진로에 대해 생각하고 가장 안정적이고 쉬우며 가장 높은 급여를 받는 기술이 무엇인지 생각해 보십시오. 소프트웨어 사람은 나이가 들면서 의료인처럼 경험에 더 의존하고 싶을 수도 있습니다. 젊은이들처럼 하루 종일 끊임없이 등장하는 새로운 소프트웨어 기술을 쫓을 필요는 없습니다. SAP나 메인프레임에 특별한 기술이 있으면 더 편향되어 있기 때문에 큰 이점을 갖게 될 것입니다.
2000년에 저는 아직도 기억합니다. 틈틈이 독일로 가서 IT 인재 몇 명을 인터뷰했는데, 당시 독일 여러 기업에서 보내온 요청 중 상당수가 SAP와 IBM 메인프레임에 대한 것이었고, 결국 우리는 경험이 있는 사람을 한 명도 찾지 못했습니다. 이 분야에는 경험이 적거나 오히려 대중적인 기술을 습득한 사람들이 너무 많았습니다.
우리 학생들이 미래에 일자리를 찾을 때 꼭 필요한 것은 아닙니다. 국내 시장에 초점을 맞추되, 글로벌 시각을 가지세요. 소프트웨어 분야에 종사하는 분들은 향후 다른 나라에서 일하는 것도 충분히 가능합니다. 특히 유럽, 미국, 일본, 싱가포르 같은 국가에서는요. SAP(IBM 메인프레임 포함) 인재에 대한 엄청난 수요가 있습니다. 결국 나는 반 친구들보다 더 많은 것을 보았고, 앞으로 이러한 독특한 기술을 배울 수 있는 기회에 더 많은 관심을 기울이도록 상기시키고 싶습니다. 시장의 경우 www.51job.com을 방문할 수 있으며, 해외 IT 인재가 필요한 경우 www.hotjobs.com을 방문하세요. www.workopolis.com, www.monster.com 등. 이러한 웹사이트를 자주 방문하여 시장의 인재에 대한 구체적인 수요를 이해하고 사전에 준비해야 합니다.
엔터프라이즈 컴퓨팅 분야에 대한 위의 견해는 참고용입니다. 비록 그 견해가 정확하지 않을 수도 있지만, 한마디로 모든 사람의 머리는 자기 목에 자라고, 누구나 자신의 머리가 있어야 한다는 것입니다.
또한 순전히 미래 취업의 관점에서 말씀드리는 점 참고해주세요. 앞으로 유학을 계획하고 계시다면 C, Assembly, OOP 등 기초과목을 주목하셔야 합니다. 이산수학, 데이터구조, 운영체제, 데이터베이스원리, 네트워크, 소프트웨어공학, 컴파일러, 디지털회로, 컴퓨터그래픽, 컴퓨터부품 및 건축 등의 기초과목을 외국대학의 IT전공에서 일반적으로 찾을 수 있습니다. 부분 면제를 신청할 수도 있지만, 나중에 졸업할 때 외국 대학에 지원하지 못하고 대학을 찾아야 한다는 점을 학생들에게 상기시키고 싶습니다. 직업, IT 전공자가 배우는 이러한 기본 과정(전통적인 IT 교육 모델)에만 에너지를 쏟는다면 J2EE와 같은 일부 기술을 마스터하지 않으면 취업하기가 쉽지 않습니다. 취업의 관점에서 볼 때, 회사에서 관심을 두는 것은 어떤 과목을 공부했는지가 아니라, 무엇을 할 수 있는지, 어떤 기술을 가지고 있는지, 어떤 프로젝트를 할 수 있는지입니다.
2. 임베디드 시스템의 방향에 대하여
임베디드 시스템은 의심의 여지 없이 현재 가장 인기 있고 유망한 IT 응용 분야 중 하나입니다. 임베디드 시스템은 일부 특정 전용 장치에 사용됩니다. 일반적으로 이러한 장치는 하드웨어 리소스(예: 프로세서, 메모리 등)가 매우 제한적이고 비용에 매우 민감하며 때로는 실시간 응답에 대한 요구 사항이 높습니다. 특히 가전제품이 스마트해지면서 임베디드 기술은 더욱 중요해지고 있습니다. 휴대폰, PDA, 전자사전, 비디오폰, VCD/DVD/MP3 플레이어, 디지털 카메라(DC), 디지털 캠코더(DV), U-Disk, 셋톱박스(Set Top Box), 고화질 TV 등 (HDTV), 게임 콘솔, 스마트 토이, 스위치, 라우터, 수치 제어 장비 또는 계측기, 자동차 전자 제품, 가전 제품 제어 시스템, 의료 기기, 항공 우주 장비 등은 모두 일반적인 임베디드 시스템입니다.
임베디드 시스템은 소프트웨어와 하드웨어의 조합입니다. 임베디드 개발에는 두 가지 유형의 사람들이 있습니다.
첫 번째 유형은 전자공학, 통신공학 등 하드웨어 전공 경력이 있는 사람들로, 주로 하드웨어 설계에 종사하며 때로는 하드웨어와 가장 밀접하게 관련된 최하위 소프트웨어를 개발하기도 한다. BootLoader 및 보드 지원 패키지(예: 하드웨어를 하향으로 구동하고 운영 체제를 상향으로 지원하는 PC의 BIOS), 가장 기본적인 하드웨어 드라이버 등 그들의 장점은 하드웨어 원리에 대해 매우 명확하다는 것입니다. 그들의 단점은 다양한 하드웨어 인터페이스를 더 잘 정의하지만 복잡한 소프트웨어 시스템(예: 임베디드 운영 체제 원리 및 복잡한 응용 프로그램 소프트웨어 등)을 마스터할 수 없다는 것입니다. .
또 다른 유형은 소프트웨어와 컴퓨터 전공자로 주로 임베디드 운영체제와 응용소프트웨어 개발에 종사하는 유형이다. 소프트웨어를 공부하는 사람들이 하드웨어 원리와 인터페이스를 잘 이해하고 있다면 BSP와 하드웨어 드라이버를 확실히 작성할 수 있습니다. 임베디드 하드웨어가 설계되면 다양한 기능이 소프트웨어에 의해 구현된다. 임베디드 디바이스의 부가가치는 임베디드 시스템의 주요 업무를 차지하는 임베디드 소프트웨어에 크게 좌우된다. (현재 많은 기업에서는 하드웨어를 사용하여 디자인 패키지를 제공하고 있다.) 하드웨어 전문업체에 맡기고, 좀 더 복잡한 하드웨어는 대만이나 외국업체에 넘겨서 설계하는 경우가 많습니다. 국내 하드웨어 설계 역량은 매우 취약합니다. 임베디드 제품의 차이점을 기업들이 모두 알기 때문에 자체적으로 소프트웨어 개발만 담당하는 경우가 많습니다. 대부분의 경우 가장 "꽃이 많은" 소프트웨어에 따라 달라지므로 소프트웨어에 종사하는 우리는 임베디드 시장에서의 유용성에 대해 걱정할 필요가 없습니다. 장치가 지능적일수록 더 복잡해집니다. 소프트웨어는 점점 더 중요한 역할을 하고 있으며 이것이 현재 추세입니다.
임베디드 소프트웨어 개발에 참여하면 다음과 같은 이점이 있습니다.
(1) 현재 국내외에서 이 분야에 종사하는 인력이 매우 부족합니다. 한편으로는 이 분야에 대한 진입 장벽이 상대적으로 높기 때문에 낮은 수준의 소프트웨어(예: 운영 체제 수준, 드라이버 수준 소프트웨어)에 대한 이해가 필요할 뿐만 아니라 더 높은 소프트웨어 전문 요구 사항(임베디드 시스템에는 시간이 필요함)도 필요하기 때문입니다. 및 소프트웨어 설계의 공간 효율성) (높은 요구 사항) 및 하드웨어의 작동 원리를 이해해야하므로 전문 IT 담당자가 아닌 경우 이 분야에 진입하기가 어렵습니다. 현재 너무 빠르게 발전하고 있으며, 많은 소프트웨어 및 하드웨어 기술이 등장한 지 오래되었거나 (ARM 프로세서, 임베디드 운영 체제, MPEG 기술, 무선 통신 프로토콜 등) 이러한 기술을 마스터하는 사람들이 있습니다. 물론 새로운 기술은 찾기가 매우 어렵습니다. 내재된 재능은 드물고 그 가치는 자연스럽게 높아집니다. 경험이 많을수록 가격은 높아집니다. 실제로 임베디드 인재가 부족한 이유는 대부분의 사람들이 무조건적인 액세스 권한을 갖고 있기 때문에 이에 상응하는 임베디드 개발 보드 및 소프트웨어가 필요하고 개발 프로세스를 안내하려면 숙련된 인력이 필요하기 때문일 수 있습니다.
(2) 엔터프라이즈 컴퓨팅과 같은 응용 소프트웨어와 달리 임베디드 분야 인재의 작업 강도는 일반적으로 낮습니다(그러나 수입은 낮지 않습니다). 기업용 애플리케이션 소프트웨어를 취급하는 IT 기업은 한 사용자를 위한 시스템을 완성하고 다음 사용자를 위한 작업을 해야 하며, 더욱이 각 사용자의 요구 사항과 완료 시간은 고객의 요구 사항에 따라 변경되어야 하며 종종 지쳐서 반복해야 합니다. 작품. 이에 비해 임베디드 시스템에 종사하는 회사는 자체적인 제품 계획을 갖고 있으며 자신의 속도에 맞춰 행동합니다. 개발된 제품은 일반적으로 보편적이며 다양한 고객을 위해 수정되지 않습니다. 제품 모델이 개발된 후에는 오랜 시간의 자유 시간(또는 약간의 사소한 소프트웨어 수리)과 재충전 및 휴식의 시간이 있는 경우가 많습니다. 또한, 임베디드 소프트웨어에 종사하는 모든 사람들의 업무 범위는 상대적으로 좁고, 관련된 전문 기술의 범위는 시간이 지날수록 경험이 많아지는 분야(ARM, RTOS, MPEG, 802.11 등)입니다. 이런 것들은 오래된 기술을 더 많이 팔아 도교를 처음 접하는 사람들이 반년 동안 숙고하는 데 몇 마디 지침이면 충분합니다. 응용 소프트웨어에 종사하는 경우 다음 클라이언트가 완전히 다른 소프트웨어 개발 플랫폼으로 전환해야 할 수도 있으며 이는 어려울 수 있습니다.
(3) 언젠가 사업을 시작하고 자신만의 제품을 개발하고 싶다면 임베디드는 애플리케이션 소프트웨어만큼 불법 복제가 되지 않는 것이 좋습니다. 토목공학부 비너스(Venus)라는 회사에서는 'Engineering e'라는 휴대용 PDA를 개발했습니다. (남캠퍼스 입구에 광고가 있습니다.) 건설 기술자들은 이 PDA를 이용해 토목 예산 견적 및 기타 토목 공사를 수행할 수 있습니다. 현장에서 매우 인기가 좋다고 합니다. 나는 식당용 주문 PDA(무선 네트워킹 및 인터넷 접속이 가능한 WinCE 플랫폼)를 개발한 한 대학 교사를 알고 있는데, 그에 따르면 식당 주문 PDA를 통해 고객이 요리를 주문할 수 있어 더욱 품격이 높다고 합니다. 레벨 00의 2+2반 학생들이 Windows 프로그래밍 강좌를 수강할 때 강좌 프로젝트로 강력한 주문 시스템을 설계하기 위해 VC++를 사용했던 것을 기억합니다. 당시 저는 이 소프트웨어를 실제로 만들어 보라고 제안하고 싶었습니다. 판매(상하이 기차역 남쪽 광장에 있는 맥도날드는 매우 아름다운 PDA를 사용하여 사용자를 위해 음식을 주문하는데 꽤 괜찮아 보입니다.) 이러한 PDA의 하드웨어 설계는 일반적으로 다른 회사에서 맞춤화합니다(이를 "OEM"이라고 함). 우리는 소프트웨어만 설계하고 자체 제품이 됩니다.
임베디드 소프트웨어 개발에 참여할 때의 단점은 다음과 같습니다.
(1) 진입 출발점이 상대적으로 높고, 소프트웨어 및 하드웨어 기반이 어려운 경우 사용되는 기술이 어려운 경우가 많습니다. 특히 운영체제 수준의 소프트웨어에 대한 깊은 지식이 없다면 이 직업에 적합하지 않을 수도 있습니다.
(2) 이 분야의 회사 수는 엔터프라이즈 컴퓨팅 회사 수보다 훨씬 적습니다.
특히 임베디드 분야에 종사하는 중소기업은 많고(소기업은 자체적으로 제품을 창업해야 함), 잘 알려진 대기업은 적습니다(임베디드 분야에 종사하는 대기업은 주로 Intel, Motorola, TI, Philip 등이 있음). , Samsung, Sony, Futjtum, Bell-Alcatel, STMicroelectronics, Microtek, Advantech, Huawei, ZTE, Shanghai Radio and Television 및 기타 제조 회사). 이들 기업의 습관적인 사고방식은 전자, 통신 등 좀 더 하드코어한 전공에 종사하는 사람을 찾는 것입니다. 정규 대학 소프트웨어 학교의 졸업생들은 주로 엔터프라이즈 컴퓨팅에 종사했기 때문에 정규 대학 소프트웨어 학교는 이러한 기업과의 접촉이 상대적으로 적습니다. 정식 대학의 소프트웨어 대학은 적극적으로 노력하고 있으며 이러한 회사 중 일부와 접촉을 맺고 정식 대학의 소프트웨어 대학 학생들이 장래에 이러한 회사에서 인턴을 하거나 취업할 수 있도록 노력하고 있습니다.
(3) 주로 임베디드 작업의 어려움 때문에 석사 학위 이상의 사람들에게 임베디드 작업에 종사하도록 요구하는 회사가 몇 군데 있습니다. 그러나 대부분의 회사에서는 경험이 있는 한 이를 요구하지 않습니다.
일반 대학 소프트웨어 학교 학생들이 임베디드를 공부한다면 당연히 우리의 강점이 될 임베디드 소프트웨어, 특히 임베디드 운영체제에 집중해야 할 것입니다. 임베디드 소프트웨어에 종사하는 사람들에게 가장 중요한 기술은 분명합니다(실제로 많은 회사의 채용 광고에서 이렇게 말합니다).
(1) 주류 임베디드 마이크로프로세서의 구조와 원리를 숙지하세요
p>(2) 임베디드 운영 체제를 마스터해야 합니다.
(3) 임베디드 소프트웨어 개발 프로세스에 대해 잘 알고 있어야 하며 적어도 하나의 임베디드 소프트웨어 프로젝트를 수행한 적이 있어야 합니다.
공식 대학 소프트웨어 학교에서 임베디드 소프트웨어에 관한 가장 중요한 과정은 다음과 같습니다.
(1) 임베디드 마이크로프로세서 구조 및 응용: 일반 대학 소프트웨어 학교에 대한 기본 과정입니다. 이 과정을 사용하여 전통적인 "마이크로컴퓨터 원리 및 인터페이스" 과정을 대체했습니다(현재 중국 대학의 소수 IT 전공자가 이 과정을 수행하고 있습니다. )을 위한 것입니다. 임베디드는 소프트웨어와 하드웨어를 결합한 기술이라고 말씀드렸습니다. 임베디드 소프트웨어에 종사하는 사람은 ARM의 조립 명령 시스템을 포함한 ARM 프로세서의 작동 원리와 인터페이스 기술을 완전히 이해해야 합니다. 프로세서의 원리를 이해하지 못한다면 하드웨어의 작업을 어떻게 제어할 수 있습니까? 메모리를 절약하고 고속으로 실행되는 최적의 코드를 어떻게 작성할 수 있습니까? (임베디드 소프트웨어 설계는 시간과 공간 효율성에 특별한 주의를 기울입니다.) 드라이버는 어떻게 작성하나요?(드라이버는 모두 하드웨어와 관련이 있습니다.) 많은 회사에서는 임베디드 소프트웨어 인력을 채용할 때 ARM 프로세서에 대한 지식을 요구합니다. 장치에 대한 하드웨어 사양(xxx 사양)을 알아야 합니다. 메모리 배포 및 포트 사용(x86 어셈블리와 마찬가지로)과 같은 가장 기본적인 지침을 이해해야 하며, 그렇지 않으면 소프트웨어 설계 방법을 이해할 수 있어야 합니다. 일부 학생들은 임베디드 프로세서 과정이 지루하다고 느낍니다. 이는 주로 하드웨어 과정이 더 추상적이기 때문입니다. 10월에 임베디드 실험실이 구축된 후에는 몇 가지 실험을 해보면 실제로 느낄 수 있습니다. 일부 학생들은 ARM 어셈블리에 관심이 없고 임베디드 개발에는 C 언어면 충분하다고 생각합니다. 사실 어셈블리 언어를 단순히 프로그래밍 언어로 간주해서는 안 됩니다. 어셈블리를 배우는 주요 목적은 프로세서의 작동 원리를 익히는 것입니다. 어셈블리 언어에 익숙하지 않은 사람이 어떻게 이 프로세서에 최적의 C 언어 코드를 작성할 수 있겠습니까? 임베디드 개발의 일부 주요 부분에서는 부트로더 등(BSP도 포함될 수 있음)과 같은 어셈블리를 작성해야 하는 경우가 있습니다. 특히 매우 빠른 속도가 요구되는 상황(예: DSP 프로세서의 고속 이미지 획득 및 이미지 압축 해제)에서 현재 프로그램은 주로 어셈블리에 의존합니다(많은 회사에서 이렇게 하는 것을 보았습니다). 임베디드 회사에서 일할 때 원리를 설명하는 매뉴얼을 보면 그 중 많은 부분이 어셈블리로 설명되어 있습니다.(제가 본 적이 있습니다.) 이는 많은 하드웨어 디자이너가 이 시점에서 어셈블리 설명만 작성하거나 사용하는 것을 좋아하기 때문입니다. 어셈블러를 이해해야 합니다. 그렇지 않으면 소프트웨어와 하드웨어 사람들이 통신하지 못할 수도 있습니다. 많은 임베디드 직위에서는 채용 시 조립에 대한 익숙함이 필요합니다.
(2) 임베디드 운영체제 강좌
실시간 성능이 약간 떨어지는 WinCE를 제외하면 대부분의 임베디드 운영체제는 실시간 성능이 강하기 때문에 실시간 운영체제(Real Time Operating System)라 불리는 임베디드 운영체제에 종사하는 사람들은 적어도 하나의 임베디드 운영체제(물론 두 개를 마스터하는 것이 더 좋음)를 마스터해야 하는데, 이는 모든 임베디드 기술 중에서 가장 중요합니다. 현재 가장 중요한 RTOS는 주로 다음과 같습니다.
첫 번째 범주인 전통적인 클래식 RTOS: 가장 중요한 것은 Vxworks 운영 체제와 Tornado 개발 플랫폼입니다. Vxworks는 앞서 등장했기 때문에 강력한 실시간 성능(외부 이벤트 요청에 1ms 이내에 응답할 수 있다고 한다)을 갖고 있고, 코어도 극히 작을 수 있고(최소 8K도 가능하다고 한다) 신뢰성이 높다. 따라서 북미에서는 Vxworks가 임베디드 시스템의 시장 점유율을 대부분 차지하고 있습니다. 특히 통신 장비와 같이 실시간 요구 사항이 높은 시스템에서는 Vxworks가 거의 최선의 선택입니다. Vxworks의 많은 개념과 기술은 Linux, 주로 C 언어 개발과 매우 유사합니다. 벨알카텔, 루센트, 화웨이 등 통신사들은 제품 개발 시 Vxworks를 많이 활용하고 있다.
그러나 Vxworks는 매우 비싸기 때문에 일부 소규모 기업이나 소규모 제품은 감당할 수 없는 경우가 많습니다. 현재 많은 기업들이 임베디드 리눅스로 전환하고 있습니다. (화웨이도 현재 임베디드 리눅스로 전환하고 있다고 들었습니다.) 그러나 어떤 일이 있어도 Vxworks는 오랫동안 흔들리지 않을 것입니다. Vxworks와 유사한 약간 유명한 실시간 운영체제로는 pSOS, QNX, Nucleus 등의 RTOS가 있습니다.
두 번째 범주인 임베디드 Linux 운영 체제: 서버 운영 체제로서의 미래 외에도 Linux의 가장 성공적인 응용 분야는 임베디드 분야입니다. 물론 무료이고 개방적이기 때문입니다. 소스가 많고, 소프트웨어도 많이 지원하고, 팬도 많아서 임베디드 제품의 가격이 더 저렴해집니다. Linux 자체는 임베디드 시스템용으로 설계된 운영 체제가 아니며, 마이크로커널 기반도 아니고, 실시간 성능도 강력하지 않습니다. 현재 임베디드 분야에서 사용되는 Linux 시스템에는 크게 두 가지 유형이 있습니다. 하나는 임베디드용으로 특별히 설계된 소형 Linux 시스템입니다. 가장 일반적으로 사용되는 것은 uClinux(MMU 기능 없음)로 현재 애플리케이션의 큰 부분을 차지하고 있습니다. ARM7에서 실행될 수 있고 다른 유형은 ARM 9에서 실행됩니다. 일반적으로 Linux 2.4.18 커널이 이식되어 더 많은 Linux 기능을 사용할 수 있습니다(물론 uClinux도 ARM 9에서 실행될 수 있습니다). 많은 사람들이 임베디드 리눅스가 임베디드 운영체제의 50% 이상을 차지할 것으로 예상하고 있는데 이는 매우 중요합니다. 단점은 리눅스에 익숙한 사람이 너무 적어서 개발이 조금 더 어렵다는 점입니다. 또한 현재 많은 교과서와 대학에서 교육용 실시간 운영 체제로 ucOS/II를 사용하고 있음을 알 수 있습니다. 이는 주로 ucOS/II가 상대적으로 간단하고 오픈 소스이기 때문에 초보자가 학습하기에 매우 적합하기 때문입니다. 그러나 ucOS/II II는 기능이 제한되어 있고 실제 응용 프로그램에서 거의 사용되지 않기 때문에 정규 대학 소프트웨어 학교에서는 이를 교육의 초점으로 간주하지 않습니다. 예를 들어 uClinux는 매우 실용적입니다. 또한, Linux 개발에 익숙해지면 임베디드 분야에서도 유용할 뿐만 아니라 Linux 응용 소프트웨어를 개발하고 운영 체제에 대한 이해를 심화하는 데에도 도움이 된다고 할 수 있습니다. 내가 아는 한 Intel과 Philip은 현재 ARM+LINUX의 임베디드 개발에 참여하고 있으며 Fujitum은 자체 프로세서에서 Linux 개발에 참여하고 있습니다. 현재 임베디드 Linux 분야에서는 다음과 같은 측면에서 사람을 찾기가 특히 어렵습니다. 첫째, Linux를 새로운 개발 버전으로 포팅할 수 있는 사람, 둘째, Linux 드라이버를 작성할 수 있는 사람, 셋째, Linux 커널 축소 및 최적화 담당자에 대해 잘 알고 있습니다. 일반 대학 소프트웨어 학교에서 제공하는 임베디드 리눅스 강좌 시리즈는 학부생 필수 운영체제 과목, 리눅스 프로그래밍 선택 과목, 마지막으로 임베디드 리눅스 시스템 선택 과목이다. 정규 대학 소프트웨어 학교는 현재 Linux에 대한 강력한 역량을 보유하고 있습니다. Wei와 Zhang 교사는 Linux 개발에 익숙하고 Jin과 Tang 교사는 Linux 시스템 관리에 익숙합니다.
세 번째 범주인 Windows CE 임베디드 운영 체제: Microsoft는 또한 거대한 임베디드 시장을 목표로 삼았습니다. MS는 항상 가장 강력할 것입니다. WinCE는 출시된 지 몇 년밖에 되지 않았지만 현재는 큰 시장을 점유하고 있습니다. 특히 PDA, 휴대폰, 디스플레이 기기 등과 같이 인터페이스 요구 사항이 높거나 빠른 개발이 필요한 상황에서 시장 점유율은 WinCE가 현재 매우 인기가 높습니다(산업용 컴퓨터를 판매하는 회사에서 보드를 너무 잘 팔았다고 합니다). 고객을 위해 WinCE를 삭제하기에는 너무 늦었습니다. WinCE는 현재 주로 버전 4.2(.NET)이고 개발 플랫폼은 주로 WinCE Platform Builder입니다. 때때로 WinCE 개발은 모두에게 익숙한 VC++ 환경에서 이루어지기 때문에 EVC 환경이 사용되기도 합니다. 대학 소프트웨어 학교에서는 Windows를 공부해 왔으며 프로그래밍 과정을 수강하는 학생들도 어려움을 느끼지 않을 것이므로 WinCE는 개발 환경이 편리하고 빠르며 Microsoft의 강력한 기술 지원으로 인해 WinCE 개발이 임베디드 Linux보다 훨씬 어렵습니다. 개발을 완료하고 싶고 임베디드 Linux로 위험을 감수하고 싶지 않은 개발 상황에는 WinCE가 가장 적합합니다(임베디드 Linux를 찾고자 하는 사람을 찾는 것은 쉽지 않습니다). 성공적인 발전을 보장하는 것이 더 중요합니다. 초점에 따라 WinCE에는 두 가지 특수 버전이 있습니다. 하나는 PDA(휴대용 컴퓨터) 전용 MS PocketPC 운영 체제이고 다른 하나는 스마트폰(PDA 기능이 있는 휴대폰)용 MS SmartPhone 운영 체제입니다. 그들은 또한 WinCE 플랫폼에 속합니다. PDA 및 휴대폰 시장에서는 WinCE 외에도 유명한 PDA 임베디드 운영체제로는 Palm OS(아주 일찍 등장했기 때문에 매우 유명함), Symbian 등이 있다. 그러나 WinCE의 강력한 영향으로 Palm과 Symbian은 여전히 정규 대학 소프트웨어 대학은 "Windows CE Embedded Operating System" 과정을 제공하는 국내 유일한 학교일 수 있습니다. 이는 주로 다음과 같은 이유 때문입니다. 대학 자체에 Windows 프로그래밍 과정이 있습니다. 학생들이 VC++를 배운 후 WinCE를 배우는 것은 매우 편리하고 자연스럽습니다. WinCE를 배우면 임베디드 소프트웨어의 일반적인 개발 프로세스도 이해할 수 있습니다. 리눅스가 두렵다.
분명히 임베디드 리눅스는 결코 WinCE를 대체할 수 없으며, 미래에 누가 가장 큰 점유율을 차지할 것인지 말하기는 어렵습니다. 결국, 여러 나라의 정부가 LINUX를 적극적으로 장려해 온 것처럼 많은 사람들이 MS 플랫폼을 더 기꺼이 받아들이게 될 것입니다. 내 관찰에 따르면 현재 임베디드 플랫폼에서는 LINUX가 가장 많이 사용되지만 실제로는 오랫동안 임베디드 LINUX를 더 많이 사용하는 회사일 수 있습니다. - 장기적인 제품 계획은 비용 절감을 위해 장기적으로 고려합니다. 두 번째는 일반 대학 소프트웨어 학교의 WinCE 과정에 대한 Microsoft Research Asia의 지원 계획입니다. 또한 향후 일반 대학 소프트웨어 학교의 학생들이 Microsoft 인터뷰에 합격할 수 있기를 바랍니다. 인턴에게. WinCE와 멀티미디어(MPEG 기술 등)는 현재 마이크로소프트 아시아엔지니어링아카데미가 많이 진행하고 있는 프로젝트 분야 중 하나로, WinCE에 능숙한 인력이 절실히 필요하다.
요약하자면, 임베디드 운영 체제 과정과 관련하여 기초가 탄탄하고 계속해서 공부할 수 있다고 생각한다면 VC++에 대한 기초가 탄탄하다고 생각하고 원하는 경우 임베디드 Linux를 배울 수 있습니다. 빠르고 쉽게 임베디드를 배우려면 개발을 위해서는 정규 대학 소프트웨어 대학의 WinCE 과정이 최선의 선택입니다.
(3) 기타 임베디드 개발 관련 소프트웨어 과정
임베디드 애플리케이션의 주요 분야에 대해 잘 알고 있다면 그러한 사람들이 기업에서 더 인기를 끌 것입니다.
주요 관련 분야는 다음과 같습니다.
A. 디지털 이미지 압축 기술: 이는 임베디드의 가장 중요하고 널리 사용되는 응용 분야 중 하나이며 주로 MPEG 인코딩 및 디코딩 알고리즘과 기술을 마스터하는 데 필요합니다. DVD, MP3, PDA, HD TV, 셋톱박스 등은 모두 MPEG 고속 디코딩 문제를 수반합니다.