Giter VIP home page Giter VIP logo

wanted_pre_onboarding's Introduction

wanted_pre_onboarding

원티드 프리온보딩 backend 과제 레포지토리

과제: 채용 공고 CRUD API 구현

구현 내용 구현 여부
채용 공고 등록
채용 공고 수정
채용 공고 삭제
채용 공고 리스트 조회
채용 공고 상세 내용 조회
(Optional) 채용 공고 검색
(Optional) 채용 공고 상세 내용 조회시 해당 기업의 다른 공고 목록도 포함
(Optional) 채용 공고 지원


0. 예시데이터

# 회사
[
  {
      "id": 1,
      "name": "원티드잇",
      "country": "KR",
      "location": "서울특별시 강남구"
  },
  {
      "id": 2,
      "name": "구글링코리아",
      "country": "US",
      "location": "Los Angeles"
  }
]
# 채용공고
{
    "id": 1,
    "uid": "6facc04c",
    "position": "백엔드 주니어 개발자",
    "reward": 600000,
    "skill": "Python, Django",
    "description": "원티드잇에서 백엔드 주니어 개발자를 채용합니다.",
    "company_name": "원티드잇",
    "company_country": "KR",
    "company_location": "서울특별시 강남구"
}


1. 채용 공고 등록

  • 채용 포지션, 채용 보상금, 사용 기술, 채용 내용, 채용할 기업의 id 를 입력 받아 채용 공고 데이터 생성
  • 요청 URL : POST: {HOST}/api/posts/

ex>

image



2. 채용 공고 수정

  • 채용 포지션, 채용 보상금, 사용 기술, 채용 내용 중 수정할 부분을 입력받아 채용 공고 수정
  • 회사는 수정할 수 없음 (요청이 올 경우 무시)
  • DB 자체 ID, 외부 공개용 ID(UID)가 있으나 현재 URL 접근은 DB 자체 ID로만 가능(추후 수정 예정)
  • 요청 URL : PUT: {HOST}/api/posts/<int:pk>

2-1. 정상적인 수정 요청

  • 채용 보상금 600000 => 700000

image

2-2. 회사id 수정 요청

  • 회사코드 1 => 2

image



3. 채용 공고 삭제

  • 요청 URL의 pk에 해당하는 공고를 삭제
  • 요청 URL : DELETE: {HOST}/api/posts/<int:pk>
  • 없는 공고 삭제시

image



4. 채용 공고 리스트 조회

  • 전체 채용 공고 리스트 조회
  • 요청 URL : GET: {HOST}/api/posts/

ex>

image



5. 채용 공고 상세 내용 조회

  • 요청 URL의 pk에 해당하는 채용 공고의 상세 내용 조회(채용 내용이 추가적으로 표시됨)
  • 요청 URL : GET: {HOST}/api/posts/<int:pk>

ex>

image



6. (Optional) 채용 공고 상세 내용 조회시 해당 기업의 다른 공고 목록도 포함

  • 채용 공고 상세 내용 조회시 기업의 다른 공고의 [id, uid] 를 함께 표시

  • 요청 URL : GET: {HOST}/api/posts/<int:pk>

  • 현재 3개의 채용 공고중 1개만 다른 기업인 상태

image

  • 1번 공고와 4번 공고의 기업이 같음

image




7. (Optional) 채용 공고 검색

  • 채용포지션('position'), 사용기술('skill'), 채용내용('description') 에 대해 해당 키워드가 있는지 검색한 결과를 조회
  • 요청 URL : GET: {HOST}/api/posts?search={params}

image




wanted_pre_onboarding's People

Contributors

hyes-y avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.