Улаанбаатар, Монгол

Тасралтгүйажиллахсистемүүд.

Намайг Зориг гэдэг. Python, TypeScript болон Go сервисүүд, PostgreSQL схем, тэдгээрийг хүргэдэг deploy pipeline бүхий production систем бүтээж 8 гаруй жил ажилласан full-stack хөгжүүлэгч.

8+жилийн production туршлага
3салбарт бүтээгдэхүүн гаргасан
1өөрөө ажиллуулдаг game server

Туршлага

Ажиллаж байсан газрууд

Гурван баг, гурван тив дамжин

  • Хуучин SOAP/XML интеграцуудыг REST endpoint болгон шилжүүлж, шинэ гуравдагч талыг холбоход шаардагдах ажлыг эрс багасгасан.
  • Хуучирсан backend CMS-ийг өгөгдлийн шилжилтийн хамт хамгийн сүүлийн тогтвортой хувилбар руу production-д саатал үүсгэлгүй шинэчилсэн.
  • Удаан ажиллаж байсан query-үүдийг дахин бичиж, дутуу байсан index-үүдийг нэмснээр ачаалал ихтэй endpoint-уудын хариу хугацааг бууруулсан.
  • Төслийн удирдлагын веб аппликейшнийг өгөгдлийн загвар, REST API, React frontend-ийн хамт бүрэн бүтээсэн.
  • WebRTC дээр суурилсан бодит цагийн дуу, дүрс, signalling бүхий уулзалтын аппликейшн хөгжүүлсэн.
  • Харилцагчийн ажил NDA-тай тул техникийн дэлгэрэнгүйг шууд ярилцахад бэлэн.
  • Үндсэн PostgreSQL схемийг дахин зохион байгуулж, шинэ NFT marketplace холбоход шаардагдах хугацааг хоногоос цаг болгон бууруулсан.
  • Гадны хөгжүүлэгчид тусламж хүсэлгүйгээр интеграц хийх боломжтой TypeScript SDK болон баримт бичгийг нийтэлсэн.
  • Хэд хэдэн салангид repository-г нэг monorepo болгож, build, lint, release хэрэгслүүдийг нэгтгэсэн.
  • CI/CD болон end-to-end тест нэвтрүүлж, алдааг QA биш release-ийн өмнө барьдаг болгосон.
  • Маркетингийн сайтын indexing-ийн асуудлыг засаж, SEO үзүүлэлтийг ойролцоогоор 50%-иар сайжруулан эхний хуудсанд гаргасан.
  • Олон эх сурвалжаас медиа болон мета өгөгдөл татдаг асинхрон ingestion pipeline бүтээж, өмнөхөөсөө 30% хурдан болгосон.
  • Python, Django дээр backend-ийн үндсэн модулиудыг, түүний дотор Монголын банк болон төлбөрийн үйлчилгээ үзүүлэгчидтэй холбогдох интеграцуудыг бичсэн.
  • GraphQL схем болон Ariadne resolver-үүдийг дахин зохион байгуулж, доод талын бүх клиентийн өгөгдөл татах, өөрчлөх логикийг хялбарчилсан.
  • Веб клиентийг React SPA болгон эхнээс нь дахин бүтээж, хажуугаар нь React Native аппын кодыг бүрэн хариуцсан.
  • Unit болон end-to-end тесттэй CI/CD тохируулж, ESLint, flake8-аар кодын стандартыг мөрдүүлсэн.

Бие даасан ажил

Чөлөөт цагаараа хийдэг зүйлс

Эхнээс нь бүхэлд нь бүтээсэн — дизайн, сервер, клиент, deploy.

Нээлттэй эх

valveFM

Ретро загварын терминал радио

radio-browser.info-оос радио станц сонсох, хуучны радио тохируулж буй мэт мэдрэмж өгөхөөр бүтээсэн, хуучны загварын терминал (TUI) радио тоглуулагч.

Go · TUI · radio-browser.info API
Төслийг үзэх

Нээлттэй эх

gopeerflix

Торрентыг шууд тоглуулагч руу дамжуулах

Peerflix-ийн Go дээрх хувилбар: торрент өгөхөд бүтэн файл татагдаж дуусахыг хүлээлгүйгээр татагдаж буй хэсгүүдийг шууд media player руу урсгана. BitTorrent-ыг тоглуулалт руу шууд дамжуулах туршилтын хэрэгжүүлэлт.

Go · BitTorrent · streaming
Төслийг үзэх

Нээлттэй эх

xypd

Сервергүй P2P файл дамжуулалт

Дундын сервергүй, хэмжээний хязгааргүй, нууц үггүй, өрөөгөөр хуваалцдаг файл дамжуулалт. WebAssembly болгон хөрвүүлсэн Go код хоёр browser хооронд шууд WebRTC холболт байгуулна.

Go · WebAssembly · WebRTC
Төслийг үзэх

Terraform-оор бэлтгэсэн

AWS дээрх serverless API

Infrastructure as code

Lambda дээр ажиллах Flask сервис, бүх дэд бүтцийг нь Terraform-оор бэлтгэсэн тул орчнууд давтагдах, code review хийх боломжтой. Өгөгдөл өсөхөд ч уншилт тогтвортой байхаар DynamoDB-ийн хандалтын загвар, partition key-г төлөвлөсөн.

Python · Flask · AWS Lambda · DynamoDB · Terraform

Харилцагчийн ажил

mongolia.coop

Хоршоологчдын үндэсний холбоо

Байгууллагын нийтийн вэб сайтыг headless CMS бүхий JAMstack архитектур дээр бүтээсэн тул техникийн бус ажилтнууд хөгжүүлэгчгүйгээр контентоо нийтэлж, засварладаг.

Gatsby · headless CMS · serverless hosting

Хэрэгслүүд

Ашигладаг технологиуд

Production-д хэр их ашигласнаар нь ойролцоогоор эрэмбэлэв.

Хэлүүд

TypeScript, JavaScript, Python, Go, SQL, Java

Backend

Node.js, NestJS, Express, Django, FastAPI, Flask, REST, GraphQL (Apollo, Ariadne), Celery, RabbitMQ

Frontend

React, Next.js, Redux, Gatsby, Sass, SSR, SEO

Mobile

React Native, Expo, EAS Build

Өгөгдөл

PostgreSQL, MongoDB, MySQL, DynamoDB, Redis — схем зохиох, query оновчлол, indexing

Cloud & дэд бүтэц

Docker, GCP Cloud Run, AWS Lambda, Terraform, Prometheus, CI/CD, Linux

Бодит цаг

WebSockets, WebRTC, Redis pub/sub, RabbitMQ

Тест

Jest, Cypress, React Testing Library, TDD, ESLint, flake8

Ажлын арга

Turborepo monorepo, Git, headless CMS, Agile/Scrum, code review

Бусад

Ажлаас гадуур

Олон нийтийн

  • ReactJS Монгол documentation maintainer (mn.reactjs.org)
  • Dev Note технологийн подкастын үүсгэн байгуулагч, хөтлөгч
  • medium.com/@zorig дээр нийтлэл бичдэг

Боловсрол, гэрчилгээ

  • Компьютерийн ухааны инженер (B.S.E.) 2014–2017
  • Fulbright тэтгэлэгт хөтөлбөрийн эзэн — (2020-2021)
  • RU101, Redis University
  • Embedded Systems (анхан шат), MUST-CSMS

Тэмцээн, хэл

  • Koding.com олон улсын хакатон, 2015 — дэлхийд 100-гаас 43-рт
  • НҮБ-ын Хүн амын сан / ХНХЯ-ны хакатон — 3-р байр
  • Англи хэл: C1 - Advanced

Ажилд нээлттэй

Ярилцъя.

Ахлах backend болон full-stack албан тушаалд нээлттэй. Захидал бичээрэй, тэр долоо хоногтоо хариу өгнө.

Зориг ГанболдУлаанбаатар, МонголView in English