닷넷코어가 부흥하는 날이 올까요?

제가 찾아보기론, C#/닷넷코어가 자바/스프링이나 노드 이런 것들보다 성능이 월등히 좋다고 봤습니다.
그런데 한국의 여러 대기업에선 왜 여전히 자바/스프링이나 노드 등을 사용하는지 약간 이해가 가지 않아서 질문 남깁니다.

좋은 서비스들은 점점 더 사용자가 많아질테고, 점점 성능이 중요해질텐데 왜 닷넷코어를 사용하지 않는 걸까요?
심지어 닷넷을 레거시로 보고 자바/스프링으로 바꾸는 곳도 꽤 있는 걸로 봤습니다…

아직 닷넷코어로 대체할 정도로 그렇게까지 성능을 향상시킬 필요가 없는 건가요?
그럼 만약 정말로 사용자와 트래픽이 많아진다면, 먼 훗날에는 닷넷코어도 많이 사용될까요?

아니면 정말로 C# 개발자분들이 별로 없어서 그런 걸까요?
물론 제가 아직 대학 새내기라 사회를 몰라서 그런 걸수도 있지만, 어른의 사정이란게 있는 걸까요…

C#이란 좋은 언어를 접하고 이쪽으로 진로를 생각하고 있는데, 처음이다보니 궁금증이 많네요.

*절대 각 언어나 프레임워크 간에 싸움을 붙이고자 하는 게 아닙니다… 단지 성능이 기본적으로도 엄청 뛰어난 게 있다면, 기업들 입장에선 그걸 사용하는게 맞지 않나 생각하는데… 왜 사용하지 않는지 궁금합니다.
만일 문제의 소지가 있다면 바로 삭제하겠습니다.

그럼 지금까지 읽어주셔서 감사합니다.

4개의 좋아요

제 생각에는 이미 한번 정착된 시스템이 잘 굴러가고 있기 때문에 불확실한 보상을 위해 인적 자원을 투자할 이유가 없다고 생각하는 것이 가장 클 것 같아요.
그리고 또 대기업일수록 안전지향주의 사고방식으로 인해 이미 잘 동작하던 기능이 나의 의견으로 인해서 버그가 발생했을 경우 그 책임을 지기 싫은 것도 있을 거에요…

하지만 다행인 점과 기대하는 점이 있다면 새롭게 시작하는 프로젝트 일 경우, 닷넷의 장점을 강하게 어필하면 닷넷으로 프로젝트를 진행하는 경우가 있다는 것 입니다.
이 케이스는 종종 제 주변에서 보고 있지만, 이분들도 위의 사례처럼 기존 시스템은 가능한 건드리지 않으려고 했어요.

8개의 좋아요

아뇨 문제되는 글이 아니고 잘 올리셨어요.

닷넷(닷넷 코어)은 이미 충분히 쓸만하고 닷넷 프레임워크를 교체할 만큼 성숙해졌는데요.

세상은 항상 좋은것만 사용되는게 아니라서요. 특히 우리나라는 전자정부프레임워크의 언어가 자바라 그 생태계를 감히 닷넷이 차지할 수 없는 생태계입니다.

닷넷이 앞으로 우리나라에서 부흥할까요? 장담할 수 없어요. 어쩌면 그러지 못할 가능성도 꽤 있습니다. 윈도 모바일이 실패하면서 사실 닷넷이 설 자리가 많이 축소가 됐고요, 올해 릴리즈가 예정된 MAUI마저 흥행에 실패하면 어쩌면 플러터 천하가 되면서 닷넷이 우리나라에서 점점 더 축소될 수도 있죠.

하지만 사용율이 높아질 것인가와 상관없이 훌륭한 닷넷 기술에 관심있는 회사가 조금씩 우리나라에서도 늘어나고 있습니다.

기술력만 어느정도 갖출 수 있다면 닷넷 하셔도 될꺼라고 전 생각해요. 되려 희소성으로 상대적으로 높은 급여 협상도 가능할껍니다.

8개의 좋아요

기술의 성능적 우위와 기술의 시장 지배력은 정비례하지 않습니다.

수치적인 성능이 뛰어나다고 시장을 지배할 수 없습니다.

최상의 성능을 내려면 어셈블리로 프로그램을 개발하는 겁니다. 그러나 어셈블리는 개발 생산성이 급격히 떨어지기 때문에 시장을 지배하기 어렵습니다. 제품 개발하는데 10년 걸린다면…

개발 생산성이 뛰어나다고 해서 시장을 지배할 수 없습니다.

Python은 동적 언어인 스크립트 언어로 타입을 지정하지 않고 사용할 수 있기 때문에 개인 개발 시 C# 보다 빠르게 개발이 가능합니다. 그러나 Python은 타입이 없어, 대규모 개발팀이 협업하는데 불리합니다.

협업하기 용이하다고 해도 시장을 지배할 수 없습니다.

C#은 개발 생산성도 좋고 타입도 안정적이며 개발 환경 또한 통일하기 좋아 대규모 개발팀이 사용하기 좋습니다. 그러나 국내 개발 인력 시장은 Java 로 교육하고 Java 숙련자가 많으며 전자 정부 프레임워크는 Java 로 개발되어 있습니다. 그리고 기존 시스템은 Java로 작성되어 있어 유지보수하려면 Java 개발자가 필요합니다.

즉, C#이 수치적인 성능이 우수하고 개발 생산성이 뛰어나며 팀이 협업하기 더 뛰어나도, 시장 지배력을 확보하고 있는 Java를 뛰어넘기 위해서는 다음과 같은 과정이 필요합니다.

C# 으로 개발하는 회사가 늘어나고, C# 경력자가 늘어나고, 경력자가 기술을 공유하여 신입 개발자를 숙련시키고, C# 으로 프로그램을 개발하고 유지보수하는 등의 일련의 시장 지배력 확보가 되어야 합니다.

새로운 기술이 시장을 지배하기 위해서는 많은 인프라가 뒷받침되어야 합니다. 단순하게 내연차와 전기차가 어떻게 세대를 교체해가고 있는지를 보시면 됩니다. 자동차를 생산하는 공장과 전기 자동차 충전소, 전기 자동차를 정비하는 정비소, 전기 자동차를 편리하게 사용할 수 있는 액세서리, 전기 자동차를 구입하도록 유도하는 보조금, 전기 자동차로 교체하기 위한 마케팅 등등 시장 지배력을 교체하기 위해서는 정말 많은 선결 과제가 필요합니다.

좋은 서비스는 사용한 기술이 얼마나 우수하냐로 결정되지 않습니다.

얼마나 뛰어난 기술로 만들었든지 간에 사용하기 불편한건 불편한 겁니다. 공인인증 기술(비대칭 암호화 기술)은 정말 우수한 보안 기술입니다. 그러나 국내 공인인증 서비스들은 하나같이 불편한 서비스입니다.

기술적으로 뛰어나니 더 좋은 서비스라고 사용자를 설득하는 건 개발자의 입장을 사용자에게 강요할 뿐입니다. 현재 사용되는 키보드 배열인 QWERTY 배열은 왼손이 더 많은 키를 눌러야 하는 비효율적인 배열입니다. 그렇다고 해서 기존 키보드 배열이 익숙한 사용자에게 새로운 배열 키보드를 제공해봤자 사용자에게 불편을 초래할 뿐입니다. 사용자에게 아무리 기술이 더 뛰어나다고 말해봤자, 건강에 좋지 않은 햄버거를 멀리하고 닭가슴살 샐러드만 먹으라는 말 밖에 안됩니다.

좋은 서비스는 정말 모호한 기준입니다. 사용자가 누구냐에 따라 달라지기도 합니다. 질문에 말씀하셨듯이 성능이 얼만큼 좋아야 좋은 서비스가 되는지 애매합니다. 누군가는 사이트 로딩이 1초가 걸려도 만족하는 반면, 다른 누군가는 0.01초도 불만족할 수 있습니다.

그리고 기술을 선택하는 기준이 얼마나 많은 사용자와 트래픽을 감당할 수 있는지가 기준이었던 적은 의외로 적습니다. 왜냐하면 기술을 변경하여 다시 개발하는 것보다 서버의 성능을 늘리는게 더 빠르고 쉬우면서 비용 효율적인 해결책입니다.

따라서, 기업의 입장에서 기술적으로 떨어지는 스프링 프레임워크라도, 기존에 개발된 시스템으로 빠르고 그리고 질 좋은 인력을 저렴하게 수급하여 서비스를 개발하는 것이 유리하기에 해당 기술로 개발할 뿐입니다.

결론

기술은 도구일 뿐입니다. 기술이 뛰어나면 무엇인가를 더 저렴한 비용으로 더 좋은 성능을 가진 무언가를 만들 수 있는 가능성입니다. 그 가능성을 실현하는 건 혼자할 수 있는 일이 아닙니다. 그러나 @닉네임간편 님이 도구로 무엇을 하는지에 따라 도구, 즉 기술의 평가가 달라지게 할 수 있습니다.

장인이 쓰는 도구는 왠지 멋져 보일테고 잘 팔릴테니까요~

그래서 저는 닷넷 코어의 부흥은 저와 @닉네임간편 님 그리고 닷넷 코어를 사용하는 우리들에게 달려 있다고 생각합니다.


예상 외로 많은 분들이 '좋아요’를 눌러주셔서 멋진 답글이 되었습니다. 감사합니다~

14개의 좋아요

앞서 훌륭한 답변들을 달아주신 것이 많습니다. 먼저 읽어보시면 좋을것 같습니다.

개인적으로는 우리나라 SI 시장에서 우대받는 기술은 자바, 스프링도 아니고 전자정부프레임워크에 국한된다고 생각합니다. 스프링 5에서 소개된 리액티브 모델이 등한시되거나, 하이버네이트가 등한시되는것이 그런 예인듯 하고요.

도메인을 넓게보면 우리나라도 그렇게 에코시스템이 편협하기만 한 것은 아니라고 생각합니다. 그저 덜 알려진게 문제이고, 시장에 데뷔할 기회가 많지 않은것이 원인이라고 봅니다.

그래서 닷넷데브는 커뮤니티가 더 많은 일을 해야하고, 시장에 선순환이 될 수 있게 노력해야한다고 보고 미약하지만 정기적인 이벤트, 컨퍼런스를 진행하고 있습니다.

@닉네임간편 님을 포함하여 많은 분들이 함께 하신다면, 곧 닷넷도 훌륭한 에코시스템을 국내에서 구축할 수 있지 않을까 생각합니다. :wink:

10개의 좋아요

dimohy 님 level120 님 rkttu 님 김예건 님 답변 감사드립니다!
정말 좋은 말씀을 해주셔서 계속 곱씹어보게 되기도 하고,
또 이렇게 훌륭한 개발자분들이 C# 에코시스템에 계신다는 것만으로도 든든합니다 ㅎㅎ

말씀해주신대로 저도 좋은 에코시스템을 형성하기 위해 노력해야겠네요
아직은 기초가 중요하다고 생각해서 CS 공부만 하고있기는 하지만…,
C#도 차근차근 공부해야겠습니다

6개의 좋아요