기업 스토리2

이미지
비즈니스
듀얼 코딩? 기존 코딩+블록 코딩 장점만 쏙!
기존 개발 언어에 블록 코딩 연결해 환경 설정 없이 백엔드 개발
블록 코딩, 어디까지 알고 있니? 모든 개발자에게는 저마다의 무기, '개발 언어'가 존재합니다. 배우긴 쉽지 않았지만 이제는 너무 익숙해졌죠. 그런데 최근 노코드가 트렌드가 되면서 노 코드 개발이 붐입니다. 블록 코딩, 들어보셨죠? 블록 코딩도 노코드 개발 방법 중 하나로 초기에는 학생들 교육용으로 많이 활용됐었죠. ​따라서, 많은 분들이 여전히 블록 코딩을 교육용으로 인식하고 있었는데 어느새 시대가 변했습니다. '노 코드(No Code)', '로우 코드(Low Code)'라는 이름으로 각광받고 있는 지금의 블록 코딩은 단순, 교육용 콘텐츠에서 벗어나 백엔드 개발은 물론, 코어 개발도 가능해졌기 때문입니다.  ​그럼에도 불구하고 이미 기존 코딩 개발 방식에 익숙한 개발자들에게는 여러 가지 이유로 인해 노 코드를 실무에서 사용하기란 쉽지 않습니다. 사실 개발자 입장에서는 기존 코딩 방식이 너무 익숙하기 때문에 블록 코딩의 필요성은 늘 우선순위 밖으로 밀려났고, 나아가, 개발 경력 관리, 락인 (Lock-in) 문제 등 개인의 커리어와 기업 프로젝트의 연속성의 차원에서도 노 코드가 지배적인 개발 방식이 되기에는 아직 갈 길이 멀어 보입니다. 듀얼 코딩? '기존 코딩' + '블록 코딩' 장점만 쏙! 이에, 저희는 개발자들의 상황을 이해하고 니즈를 파악한 뒤, 기존 개발과 블록 코딩의 각 장점을 결합해 시너지를 낼 수 있는 방법을 찾아냈습니다. 이른바  '듀얼 코딩(Dual Coding)'✨입니다! "듀얼 코딩(Dual Coding)이란? 기존 개발(코딩)과 블록 코딩을 함께 사용하여 상호 유용성을 극대화한 설계입니다. " 싱크트리 듀얼 코딩은 '기존 코딩의 장점' + '블록 코딩의 장점(손쉬운 서비스 변경 및 배포)'을 한데 모은 개발 방식으로 특히 레거시가 많은 기업에서 사용하기에 매우 적합합니다. 듀얼 코딩 사용을 원하는 기업은 아래 세 단계만 거치면 됩니다! 1단계: 싱크트리 문의 ▼ 2단계: 기존 개발에 사용하던 깃허브, 비트 버킷을 싱크트리와 연결 ▼ 3단계: 깃허브 등에서 '푸시' 이를 통해 개발자는 기존 개발 방식을 유지한 채, 신규 개발, 수정 작업 시 굉장히 빠르게 개발을 완료할 수 있습니다. 덕분에 본업(코딩)에 충실할 수 있고 요구사항에 대한 분석에 더욱 집중할 수 있는 것이죠. 또한, 서비스 재사용성이 급진적으로 높아져 기존에 활용하기 어렵던 서비스 코드들에 생명력을 불어 넣을 수도 있습니다. ​그럼 왜 '듀얼 코딩'이 강력한지 아래 기존 프로세스를 돌아보며 설명해 드리겠습니다. 끝없는 코드 수정과 배포, 듀얼 코딩으로 해결 우리가 개발한 코드에 수정이 필요 없다면 좋겠지만 현실은 그리 녹록지 않습니다. 특히 하루가 다르게 변하는 빠른 시장 요구에 대응하기 위해서라도 코드 변경은 필수입니다. 상황이 이렇다 보니 기존 코딩으로만 대처하기에는 개발 리소스가 점점 부족해지는 건 어쩌면 당연한 결과인지도 모르겠습니다.  지속적 통합(CI, Continuous Integeration) 사이클 | 출처: https://pepgotesting.com/continuous-integration 개발자들의 일반적인 배포 과정은 위 그림처럼 무수히 반복됩니다. 대부분의 개발 프로세스는 '개발 > 테스트 > 성공, 실패 여부 확인 > 스테이징 배포 > 운영 배포'의 과정을 거치는데, 오히려 개발보다 배포 과정에서 어려움을 겪는 경우가 허다한 것이죠. 아무튼 CI/CD(Continuous Integration/Continuous Delivery) 관련 고객의 서비스 변경 요청은 끝이 없고 우리는 주어진 요청 사항을 반드시 처리해야만 합니다.  ​이때, '듀얼 코딩'이 위와 같은 문제점을 모두 해결합니다. ✨   "내부적으로 CI/CD 자동화, 개발 단계에서부터 운영까지의 배포가 클릭 하나로 모두 가능해지는 것이죠.  말 그대로, 소스 수정만으로 모든 서비스 과정이 설정에 따라 자동 처리됩니다!" 싱크트리 'Orchestration'_싱크트리 내에서 비즈니스 로직 작업이 가능 예를 들어 보겠습니다. 서비스를 만들고 운영에 들어갔는데  '여기 한군데 다른 정보 하나만 넣어줄 수 없나요?'라든지 '이 부분은 정보를 빼줬으면 좋겠는데요'라는 고객의 요구를 받을 때가 있습니다. 이때 기존 코딩 방식이라면 다시 코드를 수정하고 배포하는 과정을 거쳐야 합니다. 이 정도면 다행이죠. 만약, 서비스가 복잡하게 얽혀있고 다른 곳에서 동일한 서비스를 사용하고 있다면 코드 수정만으로 해결이 어려울 수 있습니다. 다양한 예외 상황을 무시할 수 없으니까요. 이 경우, 완전히 새로운 서비스 개발이 필요해집니다. 이와 같이 프로세스나 다른 기능상의 이상은 없지만 개발자들은 늘 다양한 요구사항을 받기 마련입니다.  ​이때, 듀얼 코딩의 장점은 또 한 번 빛을 발합니다! ✨  "블록 코딩은 서비스 복제 및 데이터 조작(변경)이 가능합니다. 따라서 기존 개발 내용은 그대로 두고, 블록 코딩으로 원하는 부분을 덧붙이거나 삭제하며 서비스를 개선해 나갈 수 있습니다. ​이렇게 되면 개발자는 코드 수정 같은 요구사항에 많은 리소스를 쏟아부을 필요가 없습니다." 싱크트리 내 복제 기능(Duplicate) 싱크트리 듀얼 코딩을 경험해 보세요 백엔드 노 코드 개발 솔루션, 싱크트리의 기본 배포는 'Dev > Stage > Hotfix > Production' 순으로 진행됩니다. 물론 각 환경별 배포는 UI에서 간단한 조작으로 테스트에서 운영까지 배포가 가능합니다.  싱크트리 내 기본 배포 화면 싱크트리 '듀얼 코딩' 기능을 활용하면 기존 코딩과 블록 코딩의 장점을 모두 취할 수 있습니다.  ​개발자는 개발 언어 변경 없이 기존 그대로의 개발을 진행하고, 서비스에 활용하고 싶은 개발 소스가 있으면 공유하는 등 이미 개발된 서비스에 대한 수정사항(요구사항)이 많을 경우 요긴하게 활용될 수 있습니다. ​기존 개발 방식 그대로 유지! 환경 설정 & 배포 없는 백엔드 개발! ​싱크트리 '듀얼 코딩'으로 백엔드 개발 고민을 해결하시고 싶은 분은 여기로 문의하거나 오픈 채팅으로 지금 문의하세요! 백엔드 노코드 개발 솔루션 '싱크트리' 공식 블로그 바로가기 저작권은 엔터플에 있으며, 무단 배포를 금지합니다.
더 보기
이미지
비즈니스
싱크트리 X 카카오톡 채널 X 슬랙 연동기
구내식당 점심 메뉴 슬랙 자동 업데이트 알림 기능 만들기
안녕하세요! 엔터플 Dev 부서를 이끌고 있는 열정 가득한 개발 본부장, Stephen입니다. 싱크트리는 무한한 데이터 연계·연동이 가능한 노코드(No-Code) 솔루션입니다. 앞으로 싱트로그를 통해 몇 가지 싱크트리 연동 사례를 소개해 보려고 하는데요, 그 첫 번째 이야기는 싱크트리 X 카카오톡 채널 X 슬랙을 연동해 '구내식당 점심 메뉴 슬랙 알림 기능' 만들기 입니다. 수동으로 하던 점심 메뉴 공유, 싱크트리로 더 편하게 할 수 없을까?  매주 월요일 아침, 엔터플 '점심 먹어요' 슬랙 채널에는 구내식당 카카오톡 채널에 올라온 '주간 메뉴표' 사진이 공유됩니다. 가장 발 빠르게 메뉴를 확인한 누군가가 다른 직원들을 위해 수동으로 공유해 주고 있었던 거죠. 여기서 번뜩! 아이디어가 떠올랐습니다.  "싱크트리로 카카오톡 채널, 슬랙을 연동해서 점심 메뉴 자동 업데이트 기능을 만들면 어떨까?" 싱크트리 X 카카오톡 채널 X 슬랙 연동을 위해 필요한 건? 먼저 '주간 메뉴표'와 '일일 차림표' 슬랙 자동 알림을 위해 해야 할 일을 3가지로 정리해 봤습니다. ​1. 카카오톡 채널 확인 (KT그룹희망나눔재단 여의도점 카카오톡 채널) - 주간 메뉴표, 일일 차림표 업로드 시간 - 호출되는 API 확인 및 JSON 파싱 ​2. 슬랙 채널 연동 (Slack Messaging) - Slack Incoming WebHooks 설치(Incoming WebHooks) - Slack Incoming WebHooks API 확인(Using WebHooks) - Slack Block Kit Builder 확인 (Slack Block Kit Builder) 3. 싱크트리 블록 만들기 (싱크트리 바로 가기) - 카카오톡 채널 API 호출 및 JSON 파싱 블록 만들기 - Slack Incoming WebHooks 연동 블록 만들기 ​복잡해 보이시나요? 사실 슬랙 API만 이해하면 카카오톡 채널 내용을 슬랙에서 쉽게 확인할 수 있습니다.  이제 세부적으로 확인해야 하는 사항을 차근차근 알아보겠습니다. 1. 구내식당 카카오톡 채널 확인 (키워드 검색 - 메뉴 업로드 시간 - 호출 API 및 JSON 파싱) # 키워드 검색 주간 메뉴표와 일일 차림표 확인을 위해서는 키워드 검색이 필요했습니다. 주간 메뉴표와 일일 차림표는 각각 아래와 같은 형식으로 업로드되고 있었습니다.  <주간 메뉴표/일일 차림표 패턴> ​7월 4째주 주간 메뉴표 8월 1째주 주간 메뉴표 - 22.08.02 (화) 22.08.03 (수) 주간 메뉴표는 '째주 주간 메뉴표' 혹은 '째주 주간 메뉴표'의 패턴, 일일 차림표는 'YY.MM.DD'같은 패턴을 갖고 있군요, Keep! (영양사님의 띄어쓰기에 따라 두 가지 확인이 필요했습니다^^; trim을 통한 검색은 다음에...)  ​ # 메뉴 업로드 시간 메뉴표 업로드 시간이 일정하지 않다는 난관이 있었지만, 주간 메뉴표는 월요일 출근 시간 11분 전인 '오전 9시 49분', 일일 차림표는 점심시간 11분 전인 '오후 12시 49분'에 확인하기로 했습니다.(영양사님의 불타는 의지 = 메뉴 업로드 시간?^^) ​ # 호출 API 및 JSON 파싱 호출되는 API를 확인했고 JSON 데이터에서 어떤 데이터를 사용할지 확인했습니다. 고맙게도 JSON 데이터에 사용 가능한 text와 포스트 링크까지 정보가 많습니다. 포스트 링크에서 JSON 데이터를 가져와 봅니다.  사용할 주간 메뉴표 이미지 URL과 타이틀까지 확인 가능합니다. 사용할 데이터 확인은 이제 끝났습니다. 2. 슬랙 채널 연동  (슬랙 Messaging WebHooks 이해 - 슬랙 Block Kit Builder로 메시지 만들기) # 슬랙 Messaging WebHooks 이해하기 슬랙은 'WebHooks을 통한 메시지 전달 기능'을 제공합니다. 슬랙 사이트에서 Messaging WebHooks 내용을 확인하세요. # 슬랙 Block Kit Builder로 메시지 만들기(Slack Builder) 슬랙은 슬랙에서 보일 메시지 블록을 만드는 'Slack Builder 기능'을 제공합니다. Slack Builder로 원하는 메시지 형식을 만들 수 있는데요, 특히 마크다운(Markdown) 마크업 언어를 지원하기 때문에 더 화려한 메시지를 만들 수 있습니다.  아래는 제가 사용했던 메시지 블록입니다.  3. 싱크트리 블록 생성 (API 설계 - 카카오톡 채널 Request(선언부)/ Statement(구현부)/ Response(응답부) 간단한 JSON 구조로 다음과 같은 결과를 보여줍니다. '타이틀', '주간 메뉴표 이미지', '링크 바로 가기'로 구성되어 있습니다. 참 쉽죠?  ​이제 확인한 API와 JSON 데이터, Slack Builder를 적절히 사용해 주간 메뉴 확인 API를 만들어 보겠습니다. 당연히 싱크트리를 활용해서요! # API 설계 API도 하나의 함수라고 생각해서 다음과 같이 만들고 싶었습니다. <API 설계> ​- 상단: 변수 선언 - 중앙:  비즈니스 로직 코드 생성 - 마지막: 응답 처리 싱크트리는 코딩할 때 함수를 만드는 것과 같이 블록을 생성합니다. 특히, Code Section 블록을 통해 Request(선언부) / Statement(구현부) / Response(응답부)로 나누어 더욱 명확하게 구분 되도록 설계한 부분을 참고하시면 좋을 것 같습니다. ​# 카카오톡 채널 Request (선언부) 카카오톡 채널에서 확인한 '타이틀', '주간 메뉴표 이미지 URL', '일일 차림표 이미지 URL', '메뉴 상세' 등 정보에 대한 변수를 선언하고 확인할 때 필요한 상수를 선언합니다. Comment 블록을 통해 어떤 작업을 하는지 필요한 정보를 입력해 두었습니다. 주석이라고 보시면 되겠네요.  # 카카오톡 채널 Statement (구현부) 카카오톡 채널에서 원하는 내용을 불러오기 위해 해당 URL로 접근하여 내용을 불러옵니다. Transfer 블록을 통해 해당 URL을 호출하여 응답을 받습니다. URL 호출에 대한 JSON 응답에서 필요한 정보를 가져오기 위한 과정입니다.  Logical 한 요소가 포함되어 있지만 그래봐야 foreach, if else, json parsing 정도입니다. 가져온 JSON 중 다시 URL을 호출하여 주간 메뉴표의 이미지 URL을 가져옵니다.  이미 설계 과정에서 JSON 데이터를 확인했기 때문에 쉽게 접근이 가능했습니다.  # 카카오톡 채널 Response (응답부) - 슬랙 Incoming WebHooks 가져온 JSON 데이터에서 필요한 정보를 얻고 그 정보를 Slack Builder에 넣어 보낼 메시지를 생성했다면, 이제 실제 슬랙에 메시지를 보낼 차례입니다.  ​슬랙 사이트를 통해 Incoming WebHooks에 대해 이해했다면 생성한 요청 URL을 입력합니다. Slack Builder로 만든 JSON 값을 블록으로 만드는 과정입니다. Slack Builder 예제로 언급했던 위 JSON을 블록으로 바꿨다고 보시면 됩니다. JSON 구조를 이해한다면 어렵지 않게 만들 수 있습니다.  슬랙에 보낼 메시지 준비가 완료되었습니다. 이제 Transfer 블록을 통해 전달하면 끝!  정말 간단하죠? 띵동! 점심 메뉴 슬랙 알림이 도착했습니다~ 짜잔! '점심 주간 메뉴표 & 일일 차림표'가 슬랙에 공유되었습니다. 엔터플 가족분들이 화려한 스티커로 반응해 주셔서 뿌듯하네요. 그나저나 메뉴 사진이 너무 먹음직스러우니 오늘은 구내식당을 이용해야겠습니다^^ 총 소요 시간 전체 소요시간을 한번 측정해 봤습니다. 과정은 정말 간단하지만 실제 연동을 위해 가장 오래 걸리는 일은 Rest API 문서 확인이네요. 다른 업무와 동시에 진행하느라 영업일 기준 2일 정도 걸렸는데 만약 API나 JSON을 이해하는 개발자라면 하루면 가능하지 않을까 생각합니다.  개발자의 시선에서 본 싱크트리 개발자의 시선에서 본 싱크트리 연동 작업은 굉장히 신선합니다. 특히 미리 자료를 준비하고 블록화하는 작업은 재미있기도 한데요, 이 과정은 새로운 언어가 나올 때마다 스터디 하시는 많은 개발자분들 역시 흥미롭게 느끼실 거라 생각합니다. ​ 기존 코딩 방식과는 다른 싱크트리가 어쩌면 낯설게 느껴지실 수 있습니다. 하지만 '생각하는 대로 살지 않으면 사는 대로 생각하게 된다'라는 Paul Valery의 명언을 보며 개발도 마찬가지가 아닐까라는 생각이 들었습니다. 편안함을 경험해 보지 못하면 불편함을 불편함이라 생각하지 못하니까요. 좀 더 쉽고 빠른 방법으로 개발자에게 효율을 안겨주는 싱크트리를 꼭 체험해 보시기를 바라며 엔터플 개발자들의 싱트 활용기, 다음 아이디어도 많이 기대해 주세요! 백엔드 노코드 개발 솔루션 '싱크트리' 공식 블로그 바로가기   저작권은 엔터플에 있으며, 무단 배포를 금지합니다.
더 보기
이미지
비즈니스
듀얼 코딩? 기존 코딩+블록 코딩 장점만 쏙!
기존 개발 언어에 블록 코딩 연결해 환경 설정 없이 백엔드 개발
블록 코딩, 어디까지 알고 있니? 모든 개발자에게는 저마다의 무기, '개발 언어'가 존재합니다. 배우긴 쉽지 않았지만 이제는 너무 익숙해졌죠. 그런데 최근 노코드가 트렌드가 되면서 노 코드 개발이 붐입니다. 블록 코딩, 들어보셨죠? 블록 코딩도 노코드 개발 방법 중 하나로 초기에는 학생들 교육용으로 많이 활용됐었죠. ​따라서, 많은 분들이 여전히 블록 코딩을 교육용으로 인식하고 있었는데 어느새 시대가 변했습니다. '노 코드(No Code)', '로우 코드(Low Code)'라는 이름으로 각광받고 있는 지금의 블록 코딩은 단순, 교육용 콘텐츠에서 벗어나 백엔드 개발은 물론, 코어 개발도 가능해졌기 때문입니다.  ​그럼에도 불구하고 이미 기존 코딩 개발 방식에 익숙한 개발자들에게는 여러 가지 이유로 인해 노 코드를 실무에서 사용하기란 쉽지 않습니다. 사실 개발자 입장에서는 기존 코딩 방식이 너무 익숙하기 때문에 블록 코딩의 필요성은 늘 우선순위 밖으로 밀려났고, 나아가, 개발 경력 관리, 락인 (Lock-in) 문제 등 개인의 커리어와 기업 프로젝트의 연속성의 차원에서도 노 코드가 지배적인 개발 방식이 되기에는 아직 갈 길이 멀어 보입니다. 듀얼 코딩? '기존 코딩' + '블록 코딩' 장점만 쏙! 이에, 저희는 개발자들의 상황을 이해하고 니즈를 파악한 뒤, 기존 개발과 블록 코딩의 각 장점을 결합해 시너지를 낼 수 있는 방법을 찾아냈습니다. 이른바  '듀얼 코딩(Dual Coding)'✨입니다! "듀얼 코딩(Dual Coding)이란? 기존 개발(코딩)과 블록 코딩을 함께 사용하여 상호 유용성을 극대화한 설계입니다. " 싱크트리 듀얼 코딩은 '기존 코딩의 장점' + '블록 코딩의 장점(손쉬운 서비스 변경 및 배포)'을 한데 모은 개발 방식으로 특히 레거시가 많은 기업에서 사용하기에 매우 적합합니다. 듀얼 코딩 사용을 원하는 기업은 아래 세 단계만 거치면 됩니다! 1단계: 싱크트리 문의 ▼ 2단계: 기존 개발에 사용하던 깃허브, 비트 버킷을 싱크트리와 연결 ▼ 3단계: 깃허브 등에서 '푸시' 이를 통해 개발자는 기존 개발 방식을 유지한 채, 신규 개발, 수정 작업 시 굉장히 빠르게 개발을 완료할 수 있습니다. 덕분에 본업(코딩)에 충실할 수 있고 요구사항에 대한 분석에 더욱 집중할 수 있는 것이죠. 또한, 서비스 재사용성이 급진적으로 높아져 기존에 활용하기 어렵던 서비스 코드들에 생명력을 불어 넣을 수도 있습니다. ​그럼 왜 '듀얼 코딩'이 강력한지 아래 기존 프로세스를 돌아보며 설명해 드리겠습니다. 끝없는 코드 수정과 배포, 듀얼 코딩으로 해결 우리가 개발한 코드에 수정이 필요 없다면 좋겠지만 현실은 그리 녹록지 않습니다. 특히 하루가 다르게 변하는 빠른 시장 요구에 대응하기 위해서라도 코드 변경은 필수입니다. 상황이 이렇다 보니 기존 코딩으로만 대처하기에는 개발 리소스가 점점 부족해지는 건 어쩌면 당연한 결과인지도 모르겠습니다.  지속적 통합(CI, Continuous Integeration) 사이클 | 출처: https://pepgotesting.com/continuous-integration 개발자들의 일반적인 배포 과정은 위 그림처럼 무수히 반복됩니다. 대부분의 개발 프로세스는 '개발 > 테스트 > 성공, 실패 여부 확인 > 스테이징 배포 > 운영 배포'의 과정을 거치는데, 오히려 개발보다 배포 과정에서 어려움을 겪는 경우가 허다한 것이죠. 아무튼 CI/CD(Continuous Integration/Continuous Delivery) 관련 고객의 서비스 변경 요청은 끝이 없고 우리는 주어진 요청 사항을 반드시 처리해야만 합니다.  ​이때, '듀얼 코딩'이 위와 같은 문제점을 모두 해결합니다. ✨   "내부적으로 CI/CD 자동화, 개발 단계에서부터 운영까지의 배포가 클릭 하나로 모두 가능해지는 것이죠.  말 그대로, 소스 수정만으로 모든 서비스 과정이 설정에 따라 자동 처리됩니다!" 싱크트리 'Orchestration'_싱크트리 내에서 비즈니스 로직 작업이 가능 예를 들어 보겠습니다. 서비스를 만들고 운영에 들어갔는데  '여기 한군데 다른 정보 하나만 넣어줄 수 없나요?'라든지 '이 부분은 정보를 빼줬으면 좋겠는데요'라는 고객의 요구를 받을 때가 있습니다. 이때 기존 코딩 방식이라면 다시 코드를 수정하고 배포하는 과정을 거쳐야 합니다. 이 정도면 다행이죠. 만약, 서비스가 복잡하게 얽혀있고 다른 곳에서 동일한 서비스를 사용하고 있다면 코드 수정만으로 해결이 어려울 수 있습니다. 다양한 예외 상황을 무시할 수 없으니까요. 이 경우, 완전히 새로운 서비스 개발이 필요해집니다. 이와 같이 프로세스나 다른 기능상의 이상은 없지만 개발자들은 늘 다양한 요구사항을 받기 마련입니다.  ​이때, 듀얼 코딩의 장점은 또 한 번 빛을 발합니다! ✨  "블록 코딩은 서비스 복제 및 데이터 조작(변경)이 가능합니다. 따라서 기존 개발 내용은 그대로 두고, 블록 코딩으로 원하는 부분을 덧붙이거나 삭제하며 서비스를 개선해 나갈 수 있습니다. ​이렇게 되면 개발자는 코드 수정 같은 요구사항에 많은 리소스를 쏟아부을 필요가 없습니다." 싱크트리 내 복제 기능(Duplicate) 싱크트리 듀얼 코딩을 경험해 보세요 백엔드 노 코드 개발 솔루션, 싱크트리의 기본 배포는 'Dev > Stage > Hotfix > Production' 순으로 진행됩니다. 물론 각 환경별 배포는 UI에서 간단한 조작으로 테스트에서 운영까지 배포가 가능합니다.  싱크트리 내 기본 배포 화면 싱크트리 '듀얼 코딩' 기능을 활용하면 기존 코딩과 블록 코딩의 장점을 모두 취할 수 있습니다.  ​개발자는 개발 언어 변경 없이 기존 그대로의 개발을 진행하고, 서비스에 활용하고 싶은 개발 소스가 있으면 공유하는 등 이미 개발된 서비스에 대한 수정사항(요구사항)이 많을 경우 요긴하게 활용될 수 있습니다. ​기존 개발 방식 그대로 유지! 환경 설정 & 배포 없는 백엔드 개발! ​싱크트리 '듀얼 코딩'으로 백엔드 개발 고민을 해결하시고 싶은 분은 여기로 문의하거나 오픈 채팅으로 지금 문의하세요! 백엔드 노코드 개발 솔루션 '싱크트리' 공식 블로그 바로가기 저작권은 엔터플에 있으며, 무단 배포를 금지합니다.
더 보기
이미지
비즈니스
싱크트리 X 카카오톡 채널 X 슬랙 연동기
구내식당 점심 메뉴 슬랙 자동 업데이트 알림 기능 만들기
안녕하세요! 엔터플 Dev 부서를 이끌고 있는 열정 가득한 개발 본부장, Stephen입니다. 싱크트리는 무한한 데이터 연계·연동이 가능한 노코드(No-Code) 솔루션입니다. 앞으로 싱트로그를 통해 몇 가지 싱크트리 연동 사례를 소개해 보려고 하는데요, 그 첫 번째 이야기는 싱크트리 X 카카오톡 채널 X 슬랙을 연동해 '구내식당 점심 메뉴 슬랙 알림 기능' 만들기 입니다. 수동으로 하던 점심 메뉴 공유, 싱크트리로 더 편하게 할 수 없을까?  매주 월요일 아침, 엔터플 '점심 먹어요' 슬랙 채널에는 구내식당 카카오톡 채널에 올라온 '주간 메뉴표' 사진이 공유됩니다. 가장 발 빠르게 메뉴를 확인한 누군가가 다른 직원들을 위해 수동으로 공유해 주고 있었던 거죠. 여기서 번뜩! 아이디어가 떠올랐습니다.  "싱크트리로 카카오톡 채널, 슬랙을 연동해서 점심 메뉴 자동 업데이트 기능을 만들면 어떨까?" 싱크트리 X 카카오톡 채널 X 슬랙 연동을 위해 필요한 건? 먼저 '주간 메뉴표'와 '일일 차림표' 슬랙 자동 알림을 위해 해야 할 일을 3가지로 정리해 봤습니다. ​1. 카카오톡 채널 확인 (KT그룹희망나눔재단 여의도점 카카오톡 채널) - 주간 메뉴표, 일일 차림표 업로드 시간 - 호출되는 API 확인 및 JSON 파싱 ​2. 슬랙 채널 연동 (Slack Messaging) - Slack Incoming WebHooks 설치(Incoming WebHooks) - Slack Incoming WebHooks API 확인(Using WebHooks) - Slack Block Kit Builder 확인 (Slack Block Kit Builder) 3. 싱크트리 블록 만들기 (싱크트리 바로 가기) - 카카오톡 채널 API 호출 및 JSON 파싱 블록 만들기 - Slack Incoming WebHooks 연동 블록 만들기 ​복잡해 보이시나요? 사실 슬랙 API만 이해하면 카카오톡 채널 내용을 슬랙에서 쉽게 확인할 수 있습니다.  이제 세부적으로 확인해야 하는 사항을 차근차근 알아보겠습니다. 1. 구내식당 카카오톡 채널 확인 (키워드 검색 - 메뉴 업로드 시간 - 호출 API 및 JSON 파싱) # 키워드 검색 주간 메뉴표와 일일 차림표 확인을 위해서는 키워드 검색이 필요했습니다. 주간 메뉴표와 일일 차림표는 각각 아래와 같은 형식으로 업로드되고 있었습니다.  <주간 메뉴표/일일 차림표 패턴> ​7월 4째주 주간 메뉴표 8월 1째주 주간 메뉴표 - 22.08.02 (화) 22.08.03 (수) 주간 메뉴표는 '째주 주간 메뉴표' 혹은 '째주 주간 메뉴표'의 패턴, 일일 차림표는 'YY.MM.DD'같은 패턴을 갖고 있군요, Keep! (영양사님의 띄어쓰기에 따라 두 가지 확인이 필요했습니다^^; trim을 통한 검색은 다음에...)  ​ # 메뉴 업로드 시간 메뉴표 업로드 시간이 일정하지 않다는 난관이 있었지만, 주간 메뉴표는 월요일 출근 시간 11분 전인 '오전 9시 49분', 일일 차림표는 점심시간 11분 전인 '오후 12시 49분'에 확인하기로 했습니다.(영양사님의 불타는 의지 = 메뉴 업로드 시간?^^) ​ # 호출 API 및 JSON 파싱 호출되는 API를 확인했고 JSON 데이터에서 어떤 데이터를 사용할지 확인했습니다. 고맙게도 JSON 데이터에 사용 가능한 text와 포스트 링크까지 정보가 많습니다. 포스트 링크에서 JSON 데이터를 가져와 봅니다.  사용할 주간 메뉴표 이미지 URL과 타이틀까지 확인 가능합니다. 사용할 데이터 확인은 이제 끝났습니다. 2. 슬랙 채널 연동  (슬랙 Messaging WebHooks 이해 - 슬랙 Block Kit Builder로 메시지 만들기) # 슬랙 Messaging WebHooks 이해하기 슬랙은 'WebHooks을 통한 메시지 전달 기능'을 제공합니다. 슬랙 사이트에서 Messaging WebHooks 내용을 확인하세요. # 슬랙 Block Kit Builder로 메시지 만들기(Slack Builder) 슬랙은 슬랙에서 보일 메시지 블록을 만드는 'Slack Builder 기능'을 제공합니다. Slack Builder로 원하는 메시지 형식을 만들 수 있는데요, 특히 마크다운(Markdown) 마크업 언어를 지원하기 때문에 더 화려한 메시지를 만들 수 있습니다.  아래는 제가 사용했던 메시지 블록입니다.  3. 싱크트리 블록 생성 (API 설계 - 카카오톡 채널 Request(선언부)/ Statement(구현부)/ Response(응답부) 간단한 JSON 구조로 다음과 같은 결과를 보여줍니다. '타이틀', '주간 메뉴표 이미지', '링크 바로 가기'로 구성되어 있습니다. 참 쉽죠?  ​이제 확인한 API와 JSON 데이터, Slack Builder를 적절히 사용해 주간 메뉴 확인 API를 만들어 보겠습니다. 당연히 싱크트리를 활용해서요! # API 설계 API도 하나의 함수라고 생각해서 다음과 같이 만들고 싶었습니다. <API 설계> ​- 상단: 변수 선언 - 중앙:  비즈니스 로직 코드 생성 - 마지막: 응답 처리 싱크트리는 코딩할 때 함수를 만드는 것과 같이 블록을 생성합니다. 특히, Code Section 블록을 통해 Request(선언부) / Statement(구현부) / Response(응답부)로 나누어 더욱 명확하게 구분 되도록 설계한 부분을 참고하시면 좋을 것 같습니다. ​# 카카오톡 채널 Request (선언부) 카카오톡 채널에서 확인한 '타이틀', '주간 메뉴표 이미지 URL', '일일 차림표 이미지 URL', '메뉴 상세' 등 정보에 대한 변수를 선언하고 확인할 때 필요한 상수를 선언합니다. Comment 블록을 통해 어떤 작업을 하는지 필요한 정보를 입력해 두었습니다. 주석이라고 보시면 되겠네요.  # 카카오톡 채널 Statement (구현부) 카카오톡 채널에서 원하는 내용을 불러오기 위해 해당 URL로 접근하여 내용을 불러옵니다. Transfer 블록을 통해 해당 URL을 호출하여 응답을 받습니다. URL 호출에 대한 JSON 응답에서 필요한 정보를 가져오기 위한 과정입니다.  Logical 한 요소가 포함되어 있지만 그래봐야 foreach, if else, json parsing 정도입니다. 가져온 JSON 중 다시 URL을 호출하여 주간 메뉴표의 이미지 URL을 가져옵니다.  이미 설계 과정에서 JSON 데이터를 확인했기 때문에 쉽게 접근이 가능했습니다.  # 카카오톡 채널 Response (응답부) - 슬랙 Incoming WebHooks 가져온 JSON 데이터에서 필요한 정보를 얻고 그 정보를 Slack Builder에 넣어 보낼 메시지를 생성했다면, 이제 실제 슬랙에 메시지를 보낼 차례입니다.  ​슬랙 사이트를 통해 Incoming WebHooks에 대해 이해했다면 생성한 요청 URL을 입력합니다. Slack Builder로 만든 JSON 값을 블록으로 만드는 과정입니다. Slack Builder 예제로 언급했던 위 JSON을 블록으로 바꿨다고 보시면 됩니다. JSON 구조를 이해한다면 어렵지 않게 만들 수 있습니다.  슬랙에 보낼 메시지 준비가 완료되었습니다. 이제 Transfer 블록을 통해 전달하면 끝!  정말 간단하죠? 띵동! 점심 메뉴 슬랙 알림이 도착했습니다~ 짜잔! '점심 주간 메뉴표 & 일일 차림표'가 슬랙에 공유되었습니다. 엔터플 가족분들이 화려한 스티커로 반응해 주셔서 뿌듯하네요. 그나저나 메뉴 사진이 너무 먹음직스러우니 오늘은 구내식당을 이용해야겠습니다^^ 총 소요 시간 전체 소요시간을 한번 측정해 봤습니다. 과정은 정말 간단하지만 실제 연동을 위해 가장 오래 걸리는 일은 Rest API 문서 확인이네요. 다른 업무와 동시에 진행하느라 영업일 기준 2일 정도 걸렸는데 만약 API나 JSON을 이해하는 개발자라면 하루면 가능하지 않을까 생각합니다.  개발자의 시선에서 본 싱크트리 개발자의 시선에서 본 싱크트리 연동 작업은 굉장히 신선합니다. 특히 미리 자료를 준비하고 블록화하는 작업은 재미있기도 한데요, 이 과정은 새로운 언어가 나올 때마다 스터디 하시는 많은 개발자분들 역시 흥미롭게 느끼실 거라 생각합니다. ​ 기존 코딩 방식과는 다른 싱크트리가 어쩌면 낯설게 느껴지실 수 있습니다. 하지만 '생각하는 대로 살지 않으면 사는 대로 생각하게 된다'라는 Paul Valery의 명언을 보며 개발도 마찬가지가 아닐까라는 생각이 들었습니다. 편안함을 경험해 보지 못하면 불편함을 불편함이라 생각하지 못하니까요. 좀 더 쉽고 빠른 방법으로 개발자에게 효율을 안겨주는 싱크트리를 꼭 체험해 보시기를 바라며 엔터플 개발자들의 싱트 활용기, 다음 아이디어도 많이 기대해 주세요! 백엔드 노코드 개발 솔루션 '싱크트리' 공식 블로그 바로가기   저작권은 엔터플에 있으며, 무단 배포를 금지합니다.
더 보기

기업소식23

기업정보

  • 솔루션/SI/ERP/CRM 산업
  • 중소기업 기업형태
  • 50명 (2022) 사원수
  • 2013.12.01 설립
  • 대표
    박현민
  • 매출
    -
  • 주소
    서울 영등포구 여의대로 14
  • 웹사이트
    https://www.synctree101.com/
  • 연혁
    1. -
  • 소개
    오늘날의 디지털 경제 환경의 IT 트랜드는 API 기반의 어플리케이션이 중심이 되고 있습니다.
    기업간의 외부 연결 통신 및 MSA 아키텍처의 내부 어플리케이션들의 통신에도 API들은 광범위하게 쓰이고 있습니다.
    API의 중요성이 점점 부각이 되고 있지만 많은 개발자들은 여전히 수많은 API를 직접 손으로 짜거나 수동으로 일일이 관리하고 있습니다. 이것은 효율적이지 못하고 시간과 비용 역시 많이 소모되는 과정입니다.

    엔터플은 이러한 문제를 해결하기 위해 국내 최초의 API 관리 솔루션인 SyncTree를 개발하였습니다. SyncTree는 No-Code 기반으로 개발되었으며 다양한 기능 블록들을 Drag&Drop 방식으로 레고 블록을 쌓아 올리듯 손쉽게 API를 만들 수 있으며 전문 SW 개발자들은 물론 약간의 기술지식이 있는 비즈니스 애널리스트들까지도 간단한 학습 후 사용할 수 있는 획기적인 API 통합 솔루션입니다. SyncTree는 API를 만든 이후 API들을 관리하고 모니터링 할 수 있는 다양한 기능까지 제공합니다.
    국내에서는 다양한 기업들이 SyncTree를 도입하여 쓰고 있습니다. 그러나 SyncTree는 국내를 넘어서 아시아권, 북미권으로 확장하여 세계적인 API 관리 솔루션이 되는 것이 목표이며 가시적인 해외 시장 진출을 준비하고 있습니다.
    엔터플은 해외에서 API 솔루션 사업을 진행하여도 핵심 R&D 센터는 계속 한국에 위치할 예정입니다.
등록된 복지정보가 없습니다.
이 기업의 직원이신가요?
복지를 등록/평가해 주세요.
복지 등록하기

기업리뷰를 써야 하는 이유

  1. 1. 리뷰 하나로 열람권 획득 리뷰 하나만 써도 모든 기업 리뷰를 승인된 날로부터 1년간 볼 수 있습니다.
    잡플래닛은 당신이 가장 만족스러운 직장을 고를 수 있도록 도와줍니다. 몇분만 투자하세요!
  2. 2. 매일 수백개의 기업에 대한 새로운 리뷰 지금 이순간에도 수백명의 회원들이 기업리뷰를 남기고 있습니다. 그리고 당신의 친구, 직장 동료, 경쟁자들은 벌써 이런 정보를 보고 있을지도 모릅니다. 뒤쳐지지 마세요!
  3. 3. 운영팀도 모르는 익명성 리뷰를 검토하는 운영팀조차도 작성자가 누구인지 모릅니다. 모든 개인 정보는 암호화되며 어디에도 노출되지 않습니다. 심지어 작성자가 드러날 것만 같은 리뷰는 거절된답니다. 걱정마세요!

<리뷰 작성 Tips>

  1. 1. 기업이 가지는 ‘일자리로서의 매력’ 혹은 ‘아쉬운 점‘에 대하여 작성해주세요. 특정인을 지목하여 묘사하기 보다는 기업의 특성과 관련된 정보를 이야기해주세요. • 입사 후 어떤 업무를 하나요? • 휴가 사용은 어떻게 하나요? • 어떤 복지가 제공 되나요?
  2. 2. 본인이 경험한 사실을 작성해주세요. 간접 정보, 허위사실 또는 소문(확인되지 않은 정보, 루머 또는 다른 출처에서 인용 또는 보고된 다른 사람의 의견/경험)은 차단될 수 있습니다.
  3. 3. ‘이유‘를 함께 이야기해주세요. ‘회사가 좋다, 안 좋다’ 뿐만 아니라 그 회사가 왜 좋은지를 포함한 정보입니다. 회사를 다니면서 느꼈던 점들과 그렇게 느꼈던 이유와 근거를 이야기해 주세요.
  4. 4. ‘균형’을 맞춰주세요. 회사에 대한 긍정적 평가와 부정적 평가 모두가 구직자들에게 도움이 됩니다. 조금 더 객관적인 시각으로 장점과 단점의 균형을 권장합니다.
  • "어디로 갈지 결정해야 할 마지막 순간에 잡플래닛의 기업리뷰가 큰 도움이 되었다. 덕분에 나에게 잘 맞는 회사를 선택할 수 있었다."
  • 당신의 리뷰로 더 나은 삶을 살게 될 미래의 직장인
  • "선배에게 물어봐도 말 안해주는 이야기들. 하지만 결정을 위해 알아야만 하는 것들. 잡플래닛이 유일한 솔루션이었다."
  • 당신이 1분을 투자하고 구해낸 미래의 직장인
  • "복지제도가 있다 없다 하는 것보다 중요한건, 정말 혜택을 볼 수 있는건가 하는 거 잖아요. 그런데 그런정보는 구하기가 어려웠으니까요."
  • 당신의 리뷰로 현실을 알게 된 미래의 후배
  • "일년만 더 빨리 오픈하지! 그랬으면 이곳에 취업해서 6개월이나 허비하지 않아도 되었을텐데.. 뭐 그래도 이제는 도움 좀 받겠어요."
  • 당신이 쓴 리뷰로 재취업의 방향을 결정하려는 미래의 취업준비생

수준이 다른 잡플래닛의 연봉정보

  1. 1. 직급/직종 별로 보는 정확한 연봉 후회하지 않으려면 직급에 따라, 그 속 에서도 직종에 따라 달라지는 연 봉정보를 알아야 합니다. 회사 평균 연봉 같은 숫자에 당하지 마세요.
  2. 2. 날마다 새로워지는, 가장 현실적인 연봉 잡플래닛에서는 하루 수백건의 연봉 정보가 추가됩니다. 눈 뜨면 달라지 는 상황 속에서 언제까지 구체적 이 지도 않은 작년 연봉정보를 기준으 로 인생을 결정할 순 없으니까요.
  3. 3. 친구도 안가르쳐 주는 정보 멀지 않은 미래에 연봉을 좀더 구체적으로 볼 수 있는 기능이 적용 됩니 다. 누군가는 기본급에, 누군가는 상 여금에 더 큰 비중을 두니까요. 친구에게도 물어보기 어려운 정보를 기다리며, 잠깐만 투자하세요.

정보 등록 정책

  1. 연봉정보의 신뢰성을 높이기 위해, 작성된 모든 정보는 잡플래닛의 자체적인 검토 과정을 거쳐 등록됩니다.
  2. 등록이 거부되는 이유 1. 존재하지 않거나 명확하지 않은 기업명 2. 기존에 입력된 연봉 정보와 비교했을 때, 지나치게 큰 차이가 나는 금액 3. 직급/직종을 고려했을때 상식을 벗어난 신뢰하기 어려운 금액

이것만 기억하세요.

  1. 1. 인턴에서 이직까지. 잡플래닛의 원스톱 정보 제공 서비스 노력하면 찾을 수 있는 공채 족보뿐 만 아니라, 선배한테 매달려야 알려주는 인턴 합격수기부터 그 어디에 도 없는 경력직들의 이직 면접 팁까 지. 당신의 모든 '지원'이 합격으로 끝나는 방법이 잡플래닛에 있습니다.
  2. 2. 잠깐! 기업 리뷰도 보고 싶으신가요? 면접후기를 제출하면 합격을 부르는 수만개의 꿀팁이 열립니다. 기업 리뷰도 보고 싶으시다면 기업 리뷰를 제출해주세요. 열려라 참깨! 의 비밀은 '기브 앤 테이크' 입니다.

<면접 작성 Tips>

  1. 1. 실제 면접에 참여한 경험을 작성해주세요! 면접을 앞둔 구직자가 면접을 준비할 때 필요한 정보를 입력해주세요. • 면접을 위한 준비는 무엇인가요? • (면접질문) • 면접은 어떤 방식인가요?
  2. 2. 본인이 경험한 사실을 작성해주세요. 간접 정보, 허위사실 또는 소문(확인되지 않은 정보, 루머 또는 다른 출처에서 인용 또는 보고된 다른 사람의 의견/경험)은 차단될 수 있습니다.
  3. 3. ‘이유‘를 함께 이야기해주세요. ‘면접 분위기가 좋다, 안 좋다’ 뿐만 아니라 그 회사가 왜 좋은지를 포함한 정보입니다. 면접을 보면서 느꼈던 점들과 그렇게 느꼈던 이유와 근거를 이야기해 주세요.
  4. 4. 면접 ‘과정’에 관련된 정보를 이야기해주세요. 특정인을 지목하여 묘사하기 보다는 안내과정, 질답과정, 발표과정 등에 대하여 작성해주세요.
  • "예상질문을 준비했지만, 실제 면접에서는 전혀 다른 질문으로 몇번의 고비를 마셨습니다. 하지만,잡플래닛에서 먼저 합격한 선배들의 노하우를 보고 면접을 봤더니 바로 합격통보!소원성취!"
  • 당신이 알려준 면접 노하우를 보고 취업 성공한 미래의 후배
  • "외국계 기업의 영어 면접을 포기하고 있었습니다. 하지만 실제 면접 후기를 들어보니 영어에 까다롭지 않다고 하더군요. 그래서 자신있게 지원을 했고, 현재 이곳에서 일하고 있습니다."
  • 실제 면접과정을 알고 도전해, 이직을 성공한 직장

정보 등록 정책

  1. 면접후기의 신뢰성을 높이고 고의적 기업 평점 조작을 방지하기 위해, 작성된 모든 정보는 잡플래닛의 자체적인 검토 과정을 거쳐 등록됩니다.
  2. 등록이 거부되는 이유 1. 존재하지 않거나 명확하지 않은 기업명 2. 기업 기밀에 해당하는 내용 3. 욕설, 비속어, 은어 및 공격적인 언어 4. 부서, 직급 등 개인을 특정 지을 수 있는 정보나 폄훼, 비방성 표현 5. 기업을 이해하는데 도움이 안되는 상관 없는 내용

기업리뷰가 제출되었으며, 리뷰심사가 통과 시
노출됩니다.
지금부터 모든 기업리뷰를 제한 없이 볼 수 있습니다.
단, 리뷰심사에서 승인 거절 시 다시 제한이 됩니다.

신고하기

close