최근 직장에서 인턴으로 제기 된 질문이 있습니다.
상황을 이해하기 위해-저는 21 살이고 시스템 관리자 / QA 작업을하는 데 약 2 년의 경험이 있기 전에 2 년제 대학을 마치고 기본적으로 어떻게 다른지 알 수 있습니다. IT 부문이 운영되었습니다. 현재를 향해 전진하며 영국 최고의 연구소 중 하나에 인턴쉽을 시작합니다.
내가해야 할 일은 다양한 기술 (주로 AWS / Java / Bash)을 사용하여 내부 도구를 만드는 것입니다. 모든 것이 정상입니다. 저는 일을하고 있지만 행복하지는 않습니다. 그 이유는 무엇입니까-내가 임시 문제로 일할 것으로 예상되기 때문입니다. 디자인에 시간을 들이지 않고 빠르게 물건을 만들 수 있습니다. 제 관리자는 문제가 발생할 때 우리는 본질적으로 문제를 "돌출"할 것이라고 명시 적으로 말했습니다. 결과적으로 일을 다시하고 다시 엔지니어링해야하며 여전히 완벽하지는 않은 것으로 나타났습니다. 테스트에 관한 한, 작동하는 것처럼 보이는 한 최소한으로 유지하십시오.
이런 일을하는 방식에 동의하지 않는 것이 잘못입니까? 시스템 전체에 대해 생각한 다음 다른 구성 요소에 중점을두고 서로 상호 작용할 수있는 방법을보고, 나중에 문제가 될 수있는 다른 "핵심 포인트"를 제로화하는 것이 잘못입니까? "빠른 일"이 아닌 좋은 일을하는 것이 범죄입니까? 특정 문제 세트에 따라 최상의 것을 선택할 수 있도록 문제에 적용 할 수있는 데이터 구조를 조사하는 것이 실수이거나 잘못된 태도입니까? 내가 아는 한 "소프트웨어 엔지니어링"의 "엔지니어링"비트는 정확히 이와 관련이 있습니다. 문제 영역을 조사하고 정보에 기초한 솔루션을 찾은 다음 필요에 따라 수정 하시겠습니까?
나는 영국 팔 사무실에서 인터뷰를했고 그들은 저에게 SCRUM 방을 보여 주었고 프로젝트 관리 방법에 대해 꽤 좋은 생각을 보였습니다. SCRUM의 일반적인 문제-문제가 "여기"에서 실행되는 방식과 완전히 다른 문제를 해결하는 데 걸릴 수 있습니다.
소프트웨어 산업에 대한 잘못된 아이디어를 만들었습니까? 당신의 의견을 듣고 싶습니다. 나는 단순하고 단순하게 물건을 만들고 싶지만 양질의 물건을 만들고 싶기 때문에 소프트웨어 개발에 순전히 "진입"했다. 다양한 시나리오에서 사용되는 소프트웨어를보고 싶습니다. 방탄으로보고 싶습니다. 모든 소프트웨어 엔지니어의 원동력이 아닙니까? 나는 구문을 배우는 것만으로 누구나 프로그래머 / 코더가 될 수 있다고 생각하지만 실제 재미가 시작되는 곳은 실제로 현실에서 가능한 디자인을 생각해 내야 할 때입니다.
예전에는 대학 과제를보고 직접 코딩을 시작하여 75 % 이상을 쉽게 획득 할 수 있었으며 "소프트웨어 개발 수명주기"모듈을 결코 높이 평가하지 않았습니다. 그러나 현실 세계에서 공식적인 프로세스없이 작업하는 것이 얼마나 나쁜지를 보았을 때 요구 사항이 내일 변경 될지 모른다는 상황에서 내재 된 좌절은 (오, 우리는 그렇지 않다고 말했습니까? 요구 사항 분석이 명확하게 정의되어 있지 않습니까?)
나는 사람들이 더러운 작업을 수행하기 위해 코드 원숭이가 필요했던 위치를 방문했다고 생각하고 싶습니다. 이는 소프트웨어 세계가 크게 작동하는 방식이 아닙니다.
because I'm expected to work in an ad-hoc matter. That is create things quickly, without spending time on designing
-마감일이 있으며 결과가 나올 것으로 예상되는 The Real World ™에 오신 것을 환영합니다.