diff --git a/src/main/java/com/codiary/backend/global/config/WebConfig.java b/src/main/java/com/codiary/backend/global/config/WebConfig.java
new file mode 100644
index 00000000..c633a155
--- /dev/null
+++ b/src/main/java/com/codiary/backend/global/config/WebConfig.java
@@ -0,0 +1,19 @@
+package com.codiary.backend.global.config;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.CorsRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+@Configuration
+public class WebConfig implements WebMvcConfigurer {
+    @Override
+    public void addCorsMappings(final CorsRegistry registry) {
+        registry.addMapping("/**")
+                .allowedOrigins("http://localhost:3000")
+                .allowedMethods("GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS") // 허용할 HTTP 메소드
+                .allowedHeaders("*") // 허용할 헤더
+                .allowCredentials(true); // 자격 증명 허용
+    }
+}
+
+
diff --git a/src/main/java/com/codiary/backend/global/converter/MemberConverter.java b/src/main/java/com/codiary/backend/global/converter/MemberConverter.java
index 3d4b6796..f3b1fe57 100644
--- a/src/main/java/com/codiary/backend/global/converter/MemberConverter.java
+++ b/src/main/java/com/codiary/backend/global/converter/MemberConverter.java
@@ -4,7 +4,7 @@
 import com.codiary.backend.global.domain.entity.Follow;
 import com.codiary.backend.global.domain.entity.Member;
 import com.codiary.backend.global.domain.entity.mapping.MemberCategory;
-import com.codiary.backend.global.web.dto.Bookmark.BookmarkResponseDTO;
+import com.codiary.backend.global.domain.entity.mapping.TechStacks;
 import com.codiary.backend.global.web.dto.Member.FollowResponseDto;
 import com.codiary.backend.global.web.dto.Member.MemberResponseDTO;
 import com.codiary.backend.global.web.dto.Member.MemberSumResponseDto;
@@ -36,6 +36,16 @@ public MemberSumResponseDto toFollowResponseDto(Member member) {
                 .build();
     }
 
+    public MemberResponseDTO.TechStacksDTO toTechStacksResponseDto(Member member) {
+        return MemberResponseDTO.TechStacksDTO.builder()
+                .memberId(member.getMemberId())
+                .techStackList(member.getTechStackList()
+                        .stream()
+                        .map(TechStacks::getName)
+                        .collect(Collectors.toList()))
+                .build();
+    }
+
 
 
     // 회원별 북마크 리스트 조회
diff --git a/src/main/java/com/codiary/backend/global/domain/entity/mapping/TechStacks.java b/src/main/java/com/codiary/backend/global/domain/entity/mapping/TechStacks.java
index cb5ab03b..9eaf1994 100644
--- a/src/main/java/com/codiary/backend/global/domain/entity/mapping/TechStacks.java
+++ b/src/main/java/com/codiary/backend/global/domain/entity/mapping/TechStacks.java
@@ -1,7 +1,7 @@
 package com.codiary.backend.global.domain.entity.mapping;
 
 import com.codiary.backend.global.domain.entity.Member;
-import com.codiary.backend.global.domain.entity.Post;
+import com.codiary.backend.global.domain.enums.TechStack;
 import jakarta.persistence.*;
 import lombok.AccessLevel;
 import lombok.Getter;
@@ -16,11 +16,17 @@ public class TechStacks {
     @Column(name = "tech_stack_id", nullable = false, columnDefinition = "bigint")
     private Long techStackId;
 
-    //우선 String으로 설정, techStack 나오면 enum으로 변경 필요
+    @Enumerated(EnumType.STRING)
     @Column(name = "name", nullable = false, columnDefinition = "varchar(50)")
-    private String name;
+    private TechStack name;
 
     @ManyToOne(fetch = FetchType.LAZY)
     @JoinColumn(name = "member_id")
     private Member member;
+
+    // 생성자 추가
+    public TechStacks(TechStack name, Member member) {
+        this.name = name;
+        this.member = member;
+    }
 }
diff --git a/src/main/java/com/codiary/backend/global/domain/enums/TechStack.java b/src/main/java/com/codiary/backend/global/domain/enums/TechStack.java
new file mode 100644
index 00000000..75c1d069
--- /dev/null
+++ b/src/main/java/com/codiary/backend/global/domain/enums/TechStack.java
@@ -0,0 +1,11 @@
+package com.codiary.backend.global.domain.enums;
+
+public enum TechStack {
+    JAVA,
+    SPRING,
+    JAVA_SCRIPT,
+    REACT,
+    CSS,
+    HTML,
+    NODE_JS,
+}
diff --git a/src/main/java/com/codiary/backend/global/repository/MemberRepository.java b/src/main/java/com/codiary/backend/global/repository/MemberRepository.java
index 75eb2a84..3e01cd54 100644
--- a/src/main/java/com/codiary/backend/global/repository/MemberRepository.java
+++ b/src/main/java/com/codiary/backend/global/repository/MemberRepository.java
@@ -20,4 +20,9 @@ public interface MemberRepository extends JpaRepository<Member, Long> {
 
     @Query("SELECT m FROM Member m LEFT JOIN FETCH m.followers WHERE m.memberId = :toId")
     Optional<Member> findByToIdWithFollowers(@Param("toId") long id);
+
+    @Query("SELECT m FROM Member m LEFT JOIN FETCH m.techStackList WHERE m.memberId = :memberId")
+    Member findMemberWithTechStacks(@Param("memberId") Long memberId);
+
+
 }
diff --git a/src/main/java/com/codiary/backend/global/service/MemberService/MemberCommandService.java b/src/main/java/com/codiary/backend/global/service/MemberService/MemberCommandService.java
index 6559a168..bfb8f32b 100644
--- a/src/main/java/com/codiary/backend/global/service/MemberService/MemberCommandService.java
+++ b/src/main/java/com/codiary/backend/global/service/MemberService/MemberCommandService.java
@@ -3,6 +3,7 @@
 import com.codiary.backend.global.apiPayload.ApiResponse;
 import com.codiary.backend.global.domain.entity.Member;
 import com.codiary.backend.global.domain.entity.mapping.MemberCategory;
+import com.codiary.backend.global.domain.enums.TechStack;
 import com.codiary.backend.global.web.dto.Member.MemberRequestDTO;
 import com.codiary.backend.global.web.dto.Member.MemberResponseDTO;
 
@@ -21,4 +22,5 @@ public interface MemberCommandService {
 
     public ApiResponse<MemberResponseDTO.MemberImageDTO> setProfileImage(Member member, MemberRequestDTO.MemberProfileImageRequestDTO request);
 
+    public Member setTechStacks(Long memberId, TechStack techstack);
 }
diff --git a/src/main/java/com/codiary/backend/global/service/MemberService/MemberCommandServiceImpl.java b/src/main/java/com/codiary/backend/global/service/MemberService/MemberCommandServiceImpl.java
index d333f74f..ee27f22c 100644
--- a/src/main/java/com/codiary/backend/global/service/MemberService/MemberCommandServiceImpl.java
+++ b/src/main/java/com/codiary/backend/global/service/MemberService/MemberCommandServiceImpl.java
@@ -5,12 +5,12 @@
 import com.codiary.backend.global.apiPayload.code.status.SuccessStatus;
 import com.codiary.backend.global.apiPayload.exception.GeneralException;
 import com.codiary.backend.global.apiPayload.exception.handler.MemberHandler;
-import com.codiary.backend.global.converter.PostFileConverter;
 import com.codiary.backend.global.domain.entity.Member;
 import com.codiary.backend.global.domain.entity.MemberImage;
-import com.codiary.backend.global.domain.entity.PostFile;
 import com.codiary.backend.global.domain.entity.Uuid;
 import com.codiary.backend.global.domain.entity.mapping.MemberCategory;
+import com.codiary.backend.global.domain.entity.mapping.TechStacks;
+import com.codiary.backend.global.domain.enums.TechStack;
 import com.codiary.backend.global.jwt.JwtTokenProvider;
 import com.codiary.backend.global.jwt.SecurityUtil;
 import com.codiary.backend.global.jwt.TokenInfo;
@@ -29,6 +29,7 @@
 import org.springframework.security.crypto.password.PasswordEncoder;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.UUID;
 
@@ -134,4 +135,22 @@ public ApiResponse<MemberResponseDTO.MemberImageDTO> setProfileImage(Member memb
         return ApiResponse.onSuccess(SuccessStatus.MEMBER_OK, response);
     }
 
+    @Override
+    public Member setTechStacks(Long memberId, TechStack techstack) {
+        Member member = memberRepository.findMemberWithTechStacks(memberId);
+
+        List<TechStacks> techStackList = member.getTechStackList();
+        if (techStackList == null) {
+            techStackList = new ArrayList<>();
+        }
+
+        TechStacks newTechStack = new TechStacks(techstack, member);
+        techStackList.add(newTechStack);
+
+        member.setTechStackList(techStackList);
+
+        memberRepository.save(member);
+
+        return member;
+    }
 }
diff --git a/src/main/java/com/codiary/backend/global/web/controller/MemberController.java b/src/main/java/com/codiary/backend/global/web/controller/MemberController.java
index c73a1850..b1984a4f 100644
--- a/src/main/java/com/codiary/backend/global/web/controller/MemberController.java
+++ b/src/main/java/com/codiary/backend/global/web/controller/MemberController.java
@@ -1,17 +1,15 @@
 package com.codiary.backend.global.web.controller;
 
 import com.codiary.backend.global.apiPayload.ApiResponse;
-import com.codiary.backend.global.converter.BookmarkConverter;
 import com.codiary.backend.global.converter.MemberConverter;
 import com.codiary.backend.global.converter.PostConverter;
 import com.codiary.backend.global.domain.entity.Member;
 import com.codiary.backend.global.domain.entity.Post;
 import com.codiary.backend.global.domain.entity.Bookmark;
 import com.codiary.backend.global.domain.entity.mapping.MemberCategory;
+import com.codiary.backend.global.domain.enums.TechStack;
 import com.codiary.backend.global.service.MemberService.MemberCommandService;
-import com.codiary.backend.global.service.MemberService.MemberCommandServiceImpl;
 import com.codiary.backend.global.service.MemberService.MemberQueryService;
-import com.codiary.backend.global.web.dto.Bookmark.BookmarkResponseDTO;
 import com.codiary.backend.global.web.dto.Member.MemberRequestDTO;
 import com.codiary.backend.global.web.dto.Member.MemberResponseDTO;
 import com.codiary.backend.global.web.dto.Post.PostResponseDTO;
@@ -44,6 +42,7 @@ public class MemberController {
     private final MemberCommandService memberCommandService;
     private final FollowService followService;
     private final MemberQueryService memberQueryService;
+    private final MemberConverter memberConverter;
 
     @PostMapping("/sign-up")
     @Operation(
@@ -183,4 +182,12 @@ public ApiResponse<MemberResponseDTO.UserProfileDTO> getUserProfile(@PathVariabl
         Member member = memberCommandService.getRequester();
         return ApiResponse.onSuccess(SuccessStatus.MEMBER_OK, memberQueryService.getUserProfile(userId, member));
     }
+
+    @PostMapping(path = "/techstacks")
+    @Operation(summary = "기술 스택 추가하기", description = "기술 스택 하나씩 추가")
+    public ApiResponse<MemberResponseDTO.TechStacksDTO> setTechStacks(@RequestParam(value = "techstack") TechStack techstack) {
+        Member member = memberCommandService.getRequester();
+        member = memberCommandService.setTechStacks(member.getMemberId(), techstack);
+        return ApiResponse.onSuccess(SuccessStatus.MEMBER_OK, memberConverter.toTechStacksResponseDto(member));
+    }
 }
diff --git a/src/main/java/com/codiary/backend/global/web/dto/Member/MemberResponseDTO.java b/src/main/java/com/codiary/backend/global/web/dto/Member/MemberResponseDTO.java
index 04b23c10..65c5a3da 100644
--- a/src/main/java/com/codiary/backend/global/web/dto/Member/MemberResponseDTO.java
+++ b/src/main/java/com/codiary/backend/global/web/dto/Member/MemberResponseDTO.java
@@ -1,5 +1,6 @@
 package com.codiary.backend.global.web.dto.Member;
 
+import com.codiary.backend.global.domain.enums.TechStack;
 import com.codiary.backend.global.jwt.TokenInfo;
 import lombok.*;
 
@@ -20,7 +21,6 @@ public static class MemberTokenResponseDTO {
     }
 
 
-
     // 회원별 북마크 리스트 조회
     @Builder
     @Getter
@@ -94,9 +94,18 @@ public static class UserProfileDTO {
         String linkedinUrl;
         String discordUrl;
         String introduction;
-        List<String> techStacksList;
+        List<TechStack> techStacksList;
         List<String> teamList;
         Boolean myPage;
     }
 
+    @Builder
+    @AllArgsConstructor
+    @NoArgsConstructor // 기본 생성자 추가
+    @Getter
+    @Setter
+    public static class TechStacksDTO {
+        private Long memberId;
+        private List<TechStack> techStackList;
+    }
 }