codesaf 행님 조언좀 부탁드립니다.. ㅠㅠ
현재 프갤에서 가장 지식이 많으신거 같아서..
진지하게 부탁드립니다.
현실적인 조언 부탁드립니다.
현재 저는 대학교 3학년입니다.
국립대학교이고.. 컴퓨터 공학과이지만 컴공 순위로는 30위~40위권 정도 입니다..
시스템 소프트웨어 개발자가 되고 싶습니다.
학교 성적은 전공학점 평균 4.37로 나름.. 과에 적성이 있다고 생각됩니다..
c, c++를 학교 수업 외에도 추가적으로 공부 하였으며..
외국 포인터 서적이나 알고리즘 서적도 보았습니다.
리눅스도 공부를 하였고.. 리눅스 서버 구축도 책을 통해서 직접 구현도 해봤습니다.
대학교에서 현재 배우는 컴퓨터구조, 운영체제 외에 윈도우 프로그래밍을 현재 따로 공부중이며
리버스와 Mips어셈블리 관련해서 약간 관심이 있어서 보는중입니다.
SQL, TCP/IP 프로그래밍 학부생 정도에서는 저희 대학에서는 잘하는 정도 수준입니다..
여기서 제가..
시스템 소프트웨어 개발자가 되기 위해서는 앞으로 남은 1년하고도 6개월을 어떻게 보내야 하는지 고민됩니다..
시스템 소프트웨어 관련해서 어떤 직종이 있는지도 솔직히 아직 잘 모릅니다..
자바나 jsp 기본기는 있는데.. 딱히 좋아하진 않아서... c, c++을 좋아하는 편입니다.
졸작도.. 친구들이 자바나 jsp를 이용한 웹개발이나 어플을 좋아해서.. 이러다 혼자하게 생겼습니다..
아시는 정보 있으시면 알려주시면 감사하겠습니다.. 도와주세요..
포인터 서적도 있냐 ㅋㅋㅋㅋㅋㅋㅋㅋㅋ
리처드 리스가 지은 포인터만으로 이루어진 책이 있습니다!
http://book.naver.com/bookdb/book_detail.nhn?bid=7251751
우리나라에선 솔직히 시스템 소프트웨어 개발에서 스케일이 큰 회사가 별로 없다. 뭐 소프트웨어 개발 회사가 별로 없지.
저는 여기 말고 따로 해외 서적 구입처에서 구매해서 이것보단 저렴하게 구매했습니다.
그런 책이 팔리는게 신기하긴 하네 : ) 난 책 별로 안보는 주의라서 말야.
그럼.. 한국 대세에 따라 자바, jsp, sql을 배워서 빅데이터쪽이나.. 클라우드 쪽을 노려봐야하는 건가요?,..
결국 쉬운 취업을 바란다면 임베디드쪽이 될 것 같고.. 그쪽도 RTOS 기반한 플랫폼 개발은 필요하거든.
저는 정말 시스템 소프트웨어가 좋은데.. 어떻게 신입이 접근할 방법은 없나요?.,. 거의다 경력직을 뽑는거로 알고 있어서요..
LWIP Network 스택이나 FreeRTOS 같은거 많이 써.
잘나가는 ARM 베이스 플랫폼 하나 잡아서 에반젤리스트 정도 될 수준이면 취직은 너무너무 쉽긴 할거야.
경력대우도 받을거고.
아니면 Device Driver 쪽이나... 근데 이쪽은 페이가 쎄다고는 못하겠다. 업체들이 영세해서.
한국에서는 시스템소프트웨어는 임베디드 쪽 말고는 접근성이 좁은건가요??..
임베디드쪽이 재밌기도 해. 더 나아가서 FPGA 쪽 좀 파서 DSP 설계나 IO Controller 설계가 가능하면 더 비싸질테고.
흠. 응 사실 그렇지.
네트웍쪽은 솔루션 업체가 좀 있을거야. 그러니까 특정 파트 파트는 있는데 총괄할 정도의 볼륨은 잘 없어.
정말 감사합니다! 그럼 마지막으로.. 솔직히 저희 대학이.. 위에서 말하다싶이 공대특성화가 아니라.. 학교 수업도 그렇게 집중으로 가르쳐 주지 않아요.. 제가 따로 학교 공부 외에 추가적으로 공부하고 싶은데... 현재 말씀해주신거로는 제 실력으로 될려는지.. 처음들어보는 단어도 많아서요.. (실력이 미천해서 죄송합니다..) 임베디드 쪽으로 어떤 공부를 먼저 시작해야 할까요?
음... ST.com 에 가면... 레퍼런스가 있는데 STM32 시리즈들 보면 디스커버리 보드나... evaluation board 같은것들 있거든
싼건 3~4만원 정도에서 비싼건 20만원 이내 정도?
그런거 하나 사서 RTOS 올려보고... LCD 제어 라이브러리 만들고... 쓰레드관리하면서 이것저것 만들어보면 재미나긴 해.
아아 정말 감사합니다 ㅠㅠ 친절한 설명에 감동받음..정말 마지막으로.. 위에서 말씀해주신 네트웍 솔루션쪽은 어떤 공부를 위주로 해아하나요??
이더넷 USB 다 지원하니까... 재미삼아 오토마우스 같은걸 물리적으로 만들어볼수도 있고 : ) (Ethernet 으로 명령전송 USB HID 로 하드웨어레벨 마우스 키보드 에뮬레이션)
그러면 LCD 제어 라이브러리를 이번년도에 한번 만들어봐야겠네요!!
LWIP 는 세가지 인터페이스를 지원해. raw, netconn, BSD socket. 메서드는 몇가지 없음. 거기서 http server 예제 같은가 있으니 돌리고 놀아봐.
공유기를 만들수도 있고 : )
제가 실력이 미천한게 확실히 드러납니다.. 우물안 개구리였어요.. codesaf님이 말씀해주신 내용은 30%만 알아듣고 잇씁니다.. 하하.. 알려주신 내용 따로 찾아봐서 이해해볼게요! 정말 감사드립니다. 전 이만 내일 수업때문에 아니지 오늘 수업때문에 자러 갈게요! 수고하세요
기왕이면 네트웍, LCD, 터치 제어(및 Calibration), 멀티 쓰레딩, USB 까지 다 섭렵해 보면 재밌겠지 : )
그렇게 임베디드 개발자가 한명 늘어났다......... 코세아재 제 밥그릇 확보하기도 힘든데 왜 사람들 끌어들이능교
ㅇㅇ 잘자~
다시 한번 정말 감사드립니다. 고민되었던게 조금은 해결되었어요ㅠㅠ
시스템 프로그래머가 뭐 먹고 사냐 우리나라에서 ㅠㅠ
OS 개발사 하나 없는...
코세아재가 쓴거 대다수가 다 작년에 만드려다가 때려친거네.... 올해에는 만들겠지만...
임베디드가 답이지 하드웨어 개발은 꽤 왕성한 편이니까.
헤헷 난 삽시간에 다 만들어봄. 이래서 임베디드충 소리 들음 얼마 안만져봤는데 =_=
코세아재 리눅스 시스템 프로그래밍 + 유닉스 시스템 프로그래밍 + 리눅스 디바이스 드라이버 + 윈도우 디바이스 드라이버 개발 가능하면 어느정도임?
맥용 드라이버도 라인업에 얹어보지 ㅋㅋ
글세. 니 스펙에 비해선 약하고 뭐지? 저 애매한.
으... 윈도우 디바이스 드라이버 공부해야 하는데 시간 없고 다른건 다 제작해봐서 대충 아는데....... 맥용은 본인이 맥 제품이 없어서 패스 ㅋㅋㅋ
제 스펙이 얼마나 된다고 저게 약합니까 ㅋㅋㅋㅋㅋㅋㅋㅋ
그래도 고무적이네. 하드웨어쟁이가 소프트웨어 스펙만으로 열거하다니 ㅋㅋ
리눅스 커널 드라이버보다 WDK가 훨씬 쉬운데...
니정도면 하드웨어 업체에가면 러브콜이다. 어지간한 프로그래머들 쩜쩌먹잖.
ㅅㅅㅅ 등장 ㅋㅋㅋ
요즘 알고리즘 설계쪽으로 눈돌리고 있어서요 XD 신호처리 알고리즘 하나 설계해서 이번 IEEE sensor conference 나갈것 같은데 일단 요약본은 제출했는데 억셉이 언제 날런지 모르겠음 ㅠㅠ
소프트웨어 온리로 가면 너보다 잘하는 사람 쌨구... 하드웨어 업체가면 로컬 소프트웨어 팀 정도는 니가 쥐락펴락 할 수 있음.
아 윈도우 디바이스 드라이버가 더 쉬운가보네.... 졸업작품이 거의 스마트 웨어러블 디바이스 제작하는건데 혼자 하드웨어 + 펌웨어 다만들어야 하고 거기에 윈도우 연동까지 해야해서 디바이스 드라이버도 만들어야 하는데...
오홍..... 근데 국내에 그정도 하드웨어 업체가.....ㅠㅠ
윈도우 커널 개발이 쉬운 게 리눅스에 비해서 함수 명이 직관적임. 윈도우가 헝가리안 표기법을 고수해서 함수 이름이 MmAllocatePool 이런 식. Mm은 메모리 관리의 약자. 어떤 함수를 보면 그 카테고리를 바로 알 수 있고, 거꾸로 특정 카테고리가 필요하면 그 쪽의 함수들 찾기도 편함.
음..... 리눅스 개발해보기도 했고 여러가지 만들어봐서 그런 직관적인 함수명 보면 개발하긴 훨씬 편하긴 할듯..... 나중에 건들여봐야지
건드려 : )
https://web.archive.org/web/20101021043850/http://jedi-apilib.sourceforge.net/native/NativeList.html
이 사이트 들어가 보면 편할 거임.
윈도우 커널 함수들 목록 한 눈에 다 볼 수 있음. 강추. :) 보면 함수 이름들이 얼마나 직관적인지 알 수 있음.
오 ㅅㅅㅅ 감사!!
아참 원래 질문자야. 구입은 device mart 나 뭐 digikey 같은데서 하면 될거야.
하드웨어 입문은 뇌를 자극하는 하드웨어 입문 인가 이 책으로 시작해서 AVR ATmega128 건드려 보는 것도 좋을 듯.
난 하드웨어 입문을 arm7dtmi로 했는데....... 핵노답이였지..... 아두이노나 atmega로 하면서 데이터시트 읽는법부터 기르는게 좋을듯 싶음
임베디드가 꼭 하드웨어를 알아야하는건 아니줴~
GPIO 좀 볼줄 알면 좋지만 뭐, 예제 수준에선 중요하지 않음. 다 맞춰진 코드가 나오니.