※ 이 글은 미래의 제 자신을 위해 쓰는 글이므로 그냥 뒤로가기 하셔서 하시던거 하시는걸 추천드립니다 :) ※
현재 일하는 곳은 건설업 일부분야인 전기공사업체의 사무직(이라 쓰고 잡일을 한다)으로 IT에 전혀 무관하다. 물론 스마트에너지나 IoT관련하여 일부 관련이 있긴 하지만 현재 근무하는 곳에는 랜선설치 정도 말고는 진짜 전혀 관련된 업무가 없다. 그런데 왜 웹개발을 하는가?에 대한 이유를 말하자면... 음.... 경험상 (내가) 필요해서 라고 할 수 있고, 욕심을 부리자면 모두에게 필요한 무언가를 만들고 싶기 때문이다.
건설업 자체가 전통적인 산업이고 대기업이 아닌이상 관리시스템은 형편없다 형편이 있을 수가 없다. 현장이 메인이고 이를 서포팅해주는 업무상 전사적으로 의식이 있는 업체가 아닌이상 새로운 시스템을 도입하기 힘든 수많은 이유가 존재한다. 건축공부를 하고 단독주택 설계도 해봤고 보험영업도 해보고 웹에이전시에서 퍼블리싱도 해보고 스타트업 창업멤버로도 멘땅에 헤딩도 해봤지만 지금이 가장 노답인 느낌이다. 이런 상황은 기민하게 빠지는게 상책이지만 나는 왜 여기서 이러고 있을까. 생각해보면 사실 노답인 상황이 나를 자극시킨 이유이다. 겉으로 보면 중소기업 직장인 나부랭이지만 떠날 때 떠나더라도 한번 시도하고 검증해보고 싶었다. 내 자신의 아이디어와 능력을.
수많은 조직에서 혁신이 일어나고 가능성을 보고 스타트업도 나오지만 그게 쉽지 않다는 것을 10년 전부터 머리가 아닌 몸으로 체험 한 상태인지라 뭔가 새로운 것을 하기 보다는 지금 당장 작은 개선을 하는 것 만으로도 나에게 큰 점수를 주고 싶었고, 그 환경을 만들었다. 현재 업무에서 큰 부담이 되지 않는 선에서 내가 시도해 볼 수 있고, 테스트 할 수 있다는 것 만으로도 이유는 충분하다.
현장중심의 업계의 가장 큰 애로사항은 기록이 잘 되지 않는다는 데에 있다. 누가 어디에서 무엇을 어떻게 했는지, 자재는 얼마나 쓰였으며, 시간(그나마 시간이 기록이 잘 되지만 분석이나 기획업무에 연결되지 않는다)이 얼마나 소요됐는지, 현장의 애로사항은 없는지, 개선할 수 있는건 없는지 혹은 현장에서 관심이 있는지 등등 거의 대부분이 구두로 이루어진다. 많은 관계자들은 적당히 잘 되고 있다고들 하지만 내 기준이 너무 높은가 보다. 노측이든 사측이든 투명하게 하고 거짓말과 양심에 위배되는 소수(혹은 특정행위)를 걸러내는 시스템만 만든다면 싹다 뜯어고치치 않더라도 충분히 경쟁력있는 조직이 될 것이다. 현재 내가 있는 곳도 충분히 경쟁력이 있지만 현재에 안주하는 순간 언젠가 없어짐 당할 조직임에는 의심의 여지가 없다. 반면 지금도 경쟁사를 보면 우리보다 한두 수 아래에 있지만 여기는 작은 동네일 뿐이다. 거대한 파도에서 살아남거나 새로운 돌파구를 찾는 건 지금부터 시작해야 나중에 준비되었다고 말할 수 있지 않을까. 내가 주요 결정권자는 아니지만 stakeholder로서 책임과 권리는 부족하지 않으므로 진행하기로 한다. 진행시켜
라고는 했지만 대단한걸 한다는게 아니다. 내가 할 수 있는 범위에서 시도하겠다는 것이다. 여러조직에 있어봐서 안다. 조직원으로 대충있었을 때와 아닐 때의 차이는 시간이 지나면 알 수 있고 그 노력은 배신 한 적이 없었다. 그 신념으로 또한번 일을 저질러 본다.
서론이 또 길었다. 사실 이 서론을 쓰기 전까지의 과정도 참 길었다. 이 글의 목적은 전체적인 흐름과 프로세스에 대한 현재까지의 정리된 내용을 기록하기 위해서이다. 길을 잃었을 때 이따금씩 와서 참고하도록 하자.
01. 2020년 7월 - 상반기 종료 현재 상황
01) 업무가 늘어남. 범위와 종류가 최근 급격히 늘어남. 매출은 비례해서 오르지 않음. 정신없음
02) 사람은 모자르나 뽑고 가르치는것도 일임
03) 비효율적이지만 필수적으로 시간이 소요되는 업무가 많음
04) 잡일이 많음. 개많음.
이건 너무 추상적이다. 구체적으로 생각해보자.
02. 2020년 7월 현재 문제점
01) 정신없음 > 일,주,월,pj 단위 todo-list framework 필요 + 자동화 가능한 부분 존재함 > 비서만들기
02) 인력난 및 인사업무부담 > 현실적인 업무 매뉴얼 필요. '현실적인' 중요 > 매뉴얼 및 교육자료 만들기
03) 정보 기록, 검색, 확인하고 전달하는시간 많음 > 통합검색 가능한 환경 필요(인사,자재,현장관리) > 데이터관리시스템 만들기 + 전달 자동화
04) 잡일 > 구성원 인지의 문제 > 기록하고 가치평가 토론 후 분배하기
* 종합하여 데이터로 바로바로 sorting하고 소통할 수 있다면 경영뿐만 아니라 현장에서도 명확한 커뮤니케이션과 전략수립 가능
그중 공통적으로 개선할 수 있는 방법중 하나가 온라인화 하는 것인데 여기에 또 크고많은 제약이 존재한다. 나 혼자서 하는거고 도와주고 싶어도 도와줄 수 있는 사람이 없고, 나 자체가 많이 바쁘다. 앞으로 더 바빠질 예정이므로 좀 더 현실적으로 실현가능하며 사용성 있게 해야한다.
03. Stack
01) 서버사이드 (Back-end)
- AWS 및 회사 서버컴퓨터(일반win) 활용 가능하나 각종 문제(외부공격이나 장비 컨트롤 및 생각치 못한 기술적 문제 등)에 대처가 어려우므로 관리가 편한 웹호스팅 임대를 사용한다. (경험이 있는 cafe24활용)
- 초기에는 간단해도 후에 원하는 DB구조로 변경 및 테스트하기 위한 환경이 필요하므로 비교적 migration이 쉽다고 (지인으로부터 평가된) laravel을 해보기로 한다. (회사문서의 대부분이 엑셀이므로 구조가 비슷한 mysql이 적당함. Nosql 장점의 활용은 점차적으로 시도하는것으로 보류 - 구축은 쉬우나 관리가 어려울듯)
02) Front-end
- 잠시 해봤던 Reactjs를 하고 싶으나 유지보수에 시간이 많이 소요될 것으로 판단 (상태관리 및 어차피 백엔드는 laravel -api적용) 이런저런 장단점 검색결과 reactjs로 체계적으로 기획하고 개발하면 참 좋겠으나.... 혼자이고 시간여건 없으므로 체계적으로 개발한다는 건 욕심임.
- 화면 디자인은 무조건 ref자료 활용할것. (각종 관리화면, 핀터레스트 및 생산성도구 개발업체)
- UI는 초기에 고민하지 말 것. (시간 없음) 추후 개선할 때 고민할 것. - 현재 단계는 1차개발과 테스트가 목표
- Vuejs로 필요한 부분에 데이터 관련 코드만 restful-api 삽입하여 테스트 해볼 것.
* front-end에서 reactjs로 라이브러리를 검색해서 하는게 빠를수도 있겠으나, 이전에 경험에 의하면 함께 해결할 수 있는 풀이 없다면 여러가지 적용하고 충돌 등의 문제에 대처가 어렵다. 차라리 직접 뜯어고치다가 생기는 문제해결의 시간이 더 짧았다. 그 경험에 베팅함.
* 기존에는 프론트엔드 및 UX 위주의 경험이었지만 이번에는 철저히 DB활용임.
제목에는 하는 이유라고 적어놓고 그 이유가 그리 명확하지 않았다....;;; 나중에 정리되는대로 (개발 안될 때) 추가하자.