function atMediquitous(): ProfileBuilder {
const stack = {
fe: {
react: [
'Next.js 16 (app router)',
'React Server Components',
'tailwindcss',
'Jotai',
'TanStack Query',
'TanStack Virtual',
'Storybook',
{
testing: [
'Vitest',
'testing-library/react',
'Playwright',
'MSW',
],
},
],
svelte: ['SvelteKit', 'Svelte 4'],
},
be: {
python: {
django: ['Django REST Framework'],
},
},
platform: [
'Docker Compose',
'Redis',
'Kafka',
'OpenSearch',
],
vcs: ['git', 'GitHub'],
}
return this
.withStack(stack)
.()
.()
.()
.()
.()
.()
.()
}
function migratePagesToAppRouter(): ProfileBuilder {
return this.addExperience({context: "Pages Router 기반 nugu 몰",
contribution: "107개 페이지를 App Router로 전환",
impact: "RSC·PPR·공유 캐시 기반 확보"
}) }
function buildContentCMS(): ProfileBuilder {
return this.addExperience({context: "개발자 의존적인 프로모션 제작",
contribution: "CMS 에디터·임베드 컴포넌트 구축",
impact: "캠페인 제작을 기획자 셀프서비스로 전환"
}) }
function migrateDomainsToBff(): ProfileBuilder {
return this.addExperience({context: "모놀리스에서 BFF·MSA로 전환",
contribution: "4개 도메인의 호출 경로 이관",
impact: "레거시 테스트 정리로 테스트 시간 73% 단축"
}) }
function migrateBootstrapToTailwind(): ProfileBuilder {
return this.addExperience({context: "Bootstrap 기반 스타일 시스템",
contribution: "Tailwind CSS v4로 전면 이관",
impact: "CSS 62%·공유 JS 7.2% 감소"
}) }
function highlightEarlierWork(): ProfileBuilder {
return this.addExperience({context: "2023~2025 nugu 몰과 백오피스",
contribution: "스타일링 TF 리드·프로모션 운영 개선",
impact: "콘텐츠 4,000개·장바구니 전환율 10%"
}) }