banner10
banner12

기술 스택을 모으기 위한 전략

이 웹사이트의 데이터는 단순히 긁어모은 정보가 아닙니다. 모든 데이터를 직접 수집하고 검증하는 과정을 거쳤습니다. 이 과정은 시간과 노력이 많이 소요되었지만, 그만큼 높은 품질의 데이터를 확보할 수 있었습니다.

이 데이터들을 기반으로, 개발자들이 실질적으로 필요로 하는 정보를 제공하고, 더 나아가 개발자 생태계에 긍정적인 영향을 줄 수 있는 플랫폼을 구축하고자 합니다.

데이터 정리법

수집한 데이터는 데이터를 깔끔하게 정리하고 분류해야 필요한 정보를 쉽게 찾을 수 있습니다. 이때, Gemini의 강력한 기능을 활용하여 JSON 데이터 구조를 최적화했습니다.

  • JSON 구조 최적화의 필요성: 웹사이트에서 데이터를 효율적으로 관리하고 전송하기 위해서는 잘 구성된 JSON 형식이 필수적입니다. 불필요한 중복 데이터를 제거하고, 데이터 구조를 명확하게 정의함으로써 데이터의 크기를 줄이고, 데이터 접근 속도를 향상시킬 수 있습니다.
  • Gemini 활용: Gemini는 JSON 데이터를 분석하고 최적화하는 데 뛰어난 성능을 보여줍니다. 예를 들어, 다음과 같은 작업을 수행했습니다.
    • 스키마 정의: 데이터의 형태와 속성을 명확하게 정의하는 JSON 스키마를 작성하여 데이터의 일관성을 유지했습니다.
    • 중복 데이터 제거: 여러 데이터에서 중복되는 부분을 찾아 제거함으로써 데이터 저장 공간을 절약하고 데이터 전송 속도를 향상시켰습니다.
    • 데이터 정규화: 데이터를 여러 테이블로 분리하여 데이터의 중복성을 최소화하고 데이터의 무결성을 유지했습니다.
    • 데이터 압축: JSON 데이터를 압축하여 데이터 전송 속도를 더욱 향상시켰습니다.
  • 확장 가능한 JSON 구성: 향후 데이터가 추가되거나 변경될 경우에도 쉽게 대응할 수 있도록 확장 가능한 JSON 구조를 설계했습니다. 마치 레고 블록처럼, 새로운 데이터 유형을 쉽게 추가하거나 기존 데이터를 수정할 수 있도록 유연성을 고려했습니다.

JSON 최적화 예시

최적화 전 JSON

[
  {
    "name": "홍길동",
    "skills": ["JavaScript", "React", "Node.js", "JavaScript"],
    "company": "A회사"
  },
  {
    "name": "김철수",
    "skills": ["Python", "Django", "SQL", "Python"],
    "company": "B회사"
  }
]

최적화 후 JSON

{
  "developers": [
    { "id": 1, "name": "홍길동", "skills": [1, 2, 3], "company": 1 },
    { "id": 2, "name": "김철수", "skills": [4, 5, 6], "company": 2 }
  ],
  "skills": [
    { "id": 1, "name": "JavaScript" },
    { "id": 2, "name": "React" },
    { "id": 3, "name": "Node.js" },
    { "id": 4, "name": "Python" },
    { "id": 5, "name": "Django" },
    { "id": 6, "name": "SQL" }
  ],
  "companies": [
    { "id": 1, "name": "A회사" },
    { "id": 2, "name": "B회사" }
  ]
}

AI 모델 활용

해당 데이터들은 Gemini 2.0 Flash 모델을 활용하여 JSON 구축과 수정을 진행했습니다.

필요한 데이터 식별

어떤 데이터가 필요한지 명확하게 정의하는 것이 중요합니다. 마치 건물을 짓기 전에 설계도를 그리는 것처럼, 어떤 데이터를 수집하고 생성해야 하는지 명확하게 정의해야 합니다. 예를 들어, "개발자의 기술 스택", "기업의 채용 조건", "합격자의 스펙" 등의 JSON 데이터를 nextjs approuter 에서 어떻게 SSG에 맞게 만들수 있는가를 주문합니다.

Gemini 2.0 Flash 활용

필요한 데이터를 Gemini에게 제공하면, Gemini는 제공된 데이터를 분석하고 더 좋은 설계를 알려줍니다. 내가 생각하는 시간을 조금 줄여주고 개발문서 읽는 시간을 벌어서 빠른 개발 배포까지 1시간 일을 10분정도로 마쳐줍니다.

계속해서 JSON 데이터의 변화는 추가되고 확장되고 있습니다. 참 어려운 것 같습니다. 어떤 식으로 렌더링을 사용하고 해당 렌더링에 맞는 JSON을 만들까는 고민이 많습니다.

Copyright © 양동준 유튜브 Dongjun Yang 2025 | 문의: admin@dongurit.shop