import React, { useState } from 'react'; import { Routes, Route, NavLink } from 'react-router-dom'; import './Common.css'; import './Recruit.css'; const SUB_NAV = [ { path: '/recruit/jobs', label: '채용공고' }, { path: '/recruit/welfare', label: '복리후생' }, { path: '/recruit/apply', label: '지원하기' }, ]; function SubNav({ title }) { return ( <>
Recruit

{title}

지오정보기술과 함께 AI 인프라 혁신을 이끌어 갈 인재를 모십니다.

); } /* ── 채용공고 ── */ const JOBS = [ { id: 1, title: 'AI/LLM 엔지니어', dept: 'AI팀', type: '정규직', exp: '경력 3년 이상', stack: ['Python', 'Ollama', 'LangChain', 'FastAPI'], desc: 'GUARDiA ITSM의 온프레미스 AI 엔진 개발. 자연어→명령 파싱, LLM 파인튜닝, RAG 파이프라인 구축.', deadline: '2026.06.30', hot: true, }, { id: 2, title: 'Java 백엔드 개발자 (Spring Boot)', dept: '개발팀', type: '정규직', exp: '경력 3년 이상', stack: ['Java', 'Spring Boot', 'Oracle', 'MyBatis'], desc: '공공기관 SI/SM 프로젝트 백엔드 개발. ERP·CRM·행정정보시스템 구축 및 유지보수.', deadline: '2026.06.30', hot: true, }, { id: 3, title: 'React 프론트엔드 개발자', dept: '개발팀', type: '정규직', exp: '경력 2년 이상', stack: ['React', 'TypeScript', 'Vite', 'Chart.js'], desc: 'GUARDiA ITSM 및 고객사 포털 프론트엔드 개발. 공공기관 웹접근성(KWCAG 2.1) 준수 필수.', deadline: '2026.06.30', hot: false, }, { id: 4, title: '인프라 운영 엔지니어 (DBA)', dept: '운영팀', type: '정규직', exp: '경력 3년 이상', stack: ['Oracle', 'Tibero', 'Linux', 'Shell'], desc: 'Oracle/Tibero DB 설계·튜닝·이관. 삼성전자·국민연금급 대형 DB 운영 경험 우대.', deadline: '2026.06.15', hot: false, }, { id: 5, title: 'PM / PL (공공 SI)', dept: 'PM본부', type: '정규직', exp: '경력 5년 이상', stack: ['PMP', 'PMBOK', 'MS Project', 'Jira'], desc: '공공기관 정보화사업 PM/PL. 헌법재판소·국민연금·시립대 수준 프로젝트 관리 경험 보유자.', deadline: '2026.06.15', hot: false, }, { id: 6, title: 'DevOps / CI·CD 엔지니어', dept: '개발팀', type: '정규직', exp: '경력 2년 이상', stack: ['Docker', 'Kubernetes', 'Jenkins', 'GitHub Actions'], desc: 'GUARDiA Vibe CD 파이프라인 구축 및 운영. 폐쇄망 환경 GitOps 경험 우대.', deadline: '상시', hot: false, }, ]; function Jobs() { const [selected, setSelected] = useState(null); if (selected) { const j = JOBS.find(j => j.id === selected); return (
{j.hot && HOT}

{j.title}

{j.dept} {j.type} 경력: {j.exp} 마감: {j.deadline}

업무 내용

{j.desc}

기술 스택

{j.stack.map((s, i) => ( {s} ))}

지원 방법

이력서 및 포트폴리오를 recruit@zioinfo.co.kr 로 제출하시거나, 아래 지원하기 버튼을 이용해 주십시오.

지원하기 →
); } return (
Open Positions

현재 채용 중인 포지션

{JOBS.map(j => (
setSelected(j.id)}>
{j.hot && HOT} {j.dept} {j.type}

{j.title}

{j.desc}

{j.stack.map((s, i) => {s})}
경력{j.exp}
마감{j.deadline}
))}
); } /* ── 복리후생 ── */ const WELFARE = [ { cat: '💼 근무환경', items: [ { icon: '🕘', name: '유연근무제', desc: '코어타임(10시~16시) 외 자유로운 출퇴근 시간 선택' }, { icon: '🏠', name: '재택근무', desc: '직무에 따라 주 1~2회 재택근무 지원' }, { icon: '💻', name: '장비 지원', desc: '맥북 또는 고성능 윈도우 노트북 선택 지급' }, { icon: '🎯', name: '목표 관리(OKR)', desc: '분기별 OKR로 명확한 목표·성과 관리' }, ] }, { cat: '📚 성장 지원', items: [ { icon: '📖', name: '교육비 지원', desc: '연 200만원 교육비 지원 (도서, 강의, 세미나)' }, { icon: '🏆', name: '자격증 지원', desc: '정보처리기사, PMP, AWS, Oracle 자격증 취득 지원' }, { icon: '🎓', name: '사내 강의', desc: 'AI·클라우드·보안 월 1회 사내 기술 세미나' }, { icon: '✈️', name: '컨퍼런스', desc: 'AWS re:Invent, Google I/O 등 국내외 컨퍼런스 참가 지원' }, ] }, { cat: '🎁 복지 혜택', items: [ { icon: '🏥', name: '건강검진', desc: '연 1회 종합건강검진 (배우자 포함)' }, { icon: '🎂', name: '경조사 지원', desc: '경조금·경조휴가 제공 (결혼, 출산, 상조)' }, { icon: '🍽️', name: '식대 지원', desc: '점심 식대 월 15만원 지원 (식권 또는 카드)' }, { icon: '🎉', name: '명절 선물', desc: '설·추석 명절 선물 및 상여금 지급' }, ] }, ]; function Welfare() { return (
Welfare

함께 성장하는 환경을 만듭니다

구성원이 최고의 역량을 발휘할 수 있도록 다양한 지원을 제공합니다

{WELFARE.map((w, wi) => (

{w.cat}

{w.items.map((item, i) => (
{item.icon}

{item.name}

{item.desc}

))}
))} {/* 인재상 */}
Talent

우리가 찾는 인재

{[ { icon: '🔥', title: '도전하는 인재', desc: '새로운 기술과 문제에 두려움 없이 도전하는 분' }, { icon: '🤝', title: '협력하는 인재', desc: '팀과 함께 성장하며 지식을 나누는 분' }, { icon: '🎯', title: '책임지는 인재', desc: '맡은 업무에 오너십을 갖고 끝까지 완수하는 분' }, ].map((t, i) => (
{t.icon}

{t.title}

{t.desc}

))}
); } /* ── 지원하기 ── */ function Apply() { const [form, setForm] = useState({ name:'', email:'', phone:'', position:'', exp:'', portfolio:'', message:'' }); const [status, setStatus] = useState(null); const handleChange = e => setForm(f => ({ ...f, [e.target.name]: e.target.value })); const handleSubmit = e => { e.preventDefault(); setStatus('success'); }; return (
Apply

입사 지원서

아래 양식을 작성하시거나 recruit@zioinfo.co.kr로 이력서를 보내주세요

{status === 'success' ? (

지원이 완료되었습니다!

검토 후 영업일 기준 3~5일 내에 연락 드리겠습니다.
recruit@zioinfo.co.kr 로도 이력서를 추가 제출하시면 더욱 빠르게 처리됩니다.

) : (