학습 자료

개발자라면 반드시 알아야 하는 프로그래밍 필수 영어 표현

영문 기술 문서를 읽거나 오픈소스 커뮤니티의 의사소통 현장을 관찰해 보면 IT 업계에 자주 등장하는 어휘(Vocabulary)와 표현(Expression)이 있다는 것을 알게 됩니다.

예를 들어 영어 동사 Implement (구현하다, 시행하다)는 새로운 기능을 구현할 때 자주 사용됩니다. (예: Implement a JWT-based authentication system, JWT 기반의 인증 시스템 구현)

또한 해외 클라이언트와 소통하며 덮어쓰다(overwrite), 사용자 정의(user-defined)와 같이 한국어로 익숙한 표현들을 영어로 떠올리기 어려울 수 있습니다.

execution(실행), deprecated(사용이 권장되지 않음)와 같이 실무에 자주 등장하는 영어 단어의 발음을 잘못 알고 있을 수 있습니다.

IT 개발 업계에 자주 등장하는 어휘와 표현들을 한번만 제대로 숙지해두시면 기술 문서를 읽거나 해외 테크 컨퍼런스를 시청할 때 내용을 이해하는 속도가 훨씬 빨라지게 됩니다.

소개하는 어휘와 표현을 단순히 눈으로 읽는 것에서 멈추지 않고 소리 내어 발음하거나 직접 써보는 것을 권장합니다.

우리의 뇌는 입력(Input) 된 정보를 출력(Output)해 봐야 내용을 더 오래 기억하기 때문입니다.

지금부터 IT 필수 영단어와 표현을 살펴보겠습니다.

Quiz
0 / 1

Execute의 발음을 한국어로 표기하면 [익시큐트]에 가깝다.

학습 자료

AI 튜터

디자인

업로드

수업 노트

즐겨찾기

도움말

개발자를 위한 필수 영어 표현

agile

작은 단위로 신속하게 반복 작업을 수행하는 소프트웨어 개발 방법론

Agile software development refers to a software development methodology based on iterative development. 애자일 방법론은 반복적인 개발에 기반한 소프트웨어 개발 방법론을 의미합니다.

sprint

애자일 방법론에서 새로운 기능을 개발하거나 백로그를 처리하기 위해 개발 주기를 반복(iteration)하는 짧은 기간(time-boxed period)

A sprint is a time-boxed period during which specific work has to be completed and made ready for review. 스프린트는 특정 작업이 완료되고 검토를 위해 준비되는 시간 제한 기간을 의미합니다.

dev-ops

개발(development)과 운영(operations)의 합성어로 지속적인 유지관리, 업데이트, 배포를 통해 개발팀과 운영팀 사이의 소통과 협업을 장려하는 시스템 및 개발 환경. 데브옵스 엔지니어는 시스템 유지관리와 배포, 업데이트를 통한 안정적인 시스템 운영을 담당합니다.

DevOps is a set of practices that combines software development (Dev) and IT operations (Ops). 데브옵스는 소프트웨어 개발(Dev)과 IT 운영(Ops)을 결합한 일련의 관행을 의미합니다.

backlog

로드맵을 달성하기 위해 개발되어야 하는 기능, 수정되어야 하는 버그와 같은 작업 목록(task list)

There are massive backlogs we have to handle by this week. 이번 주까지 처리해야 하는 엄청난 백로그가 있습니다.

hotfix

운영 중인 소프트웨어에서 발생한 긴급한 문제를 즉각 수정하기 위한 빠른 패치. 보통 사용자에게 영향을 미치는 심각한 오류나 보안 문제를 해결할 때 사용하며, 일반적인 업데이트 주기를 기다리지 않고 즉시 프로덕션 환경에 적용합니다.

The team released a hotfix to address the critical security vulnerability. 팀은 중요한 보안 취약점을 해결하기 위해 핫픽스를 배포했습니다.

staging

사용자에게 배포하기 전 테스트 및 검증을 수행하는 환경. 실제 운영 환경(production)과 유사하게 구성하여 새로운 기능에 이상이 없는지 점검합니다.

The new feature is currently in the staging environment for testing before production release. 새로운 기능은 프로덕션 배포 전에 테스트를 위해 스테이징 환경에 있습니다.

production

실제 사용자가 사용하는 운영 환경

The application is now live in the production environment. 애플리케이션이 이제 운영 환경에서 라이브 상태입니다.

nightly build

개발 중인 소프트웨어의 상태를 하루에 한 번씩 자동으로 빌드하여 생성되는 버전. 주로 개발팀 내부에서 테스트 목적으로 사용되며, 최신 상태를 반영합니다.

The nightly build includes the latest changes made by the development team. 야간 빌드는 개발팀이 만든 최신 변경 사항을 포함합니다.

canary build

소규모 사용자 그룹에게 배포되는 초기 버전의 소프트웨어. 주로 대규모 배포 전에 잠재적인 문제를 발견하고 해결하기 위해 활용됩니다. '카나리'라는 이름은 과거에 광부들이 위험한 가스 유무를 확인하기 위해 카나리아를 사용했던 관습에서 유래되었습니다.

We'll release the canary build to a small group of users for early feedback. 초기 피드백을 받기 위해 소규모 사용자 그룹에게 카나리 빌드를 배포할 예정입니다.

load balancing

여러 서버에 트래픽을 분산시켜 각 서버에 부하를 고르게 분배하는 기술. 시스템의 성능과 가용성을 높이고, 특정 서버에 과부하가 걸리는 것을 방지합니다.

The load balancer distributes incoming traffic across multiple servers to ensure stability. 로드 밸런서는 안정성을 보장하기 위해 들어오는 트래픽을 여러 서버에 분산시킵니다.

headless

GUI가 없는 장치에서 작동 가능한 프로그램, 프런트엔드(UI)와 백엔드(콘텐츠 및 데이터)를 분리하는 개발 방식입니다.

A headless browser is a web browser that has no graphical user interface. 헤드리스 브라우저는 그래픽 사용자 인터페이스가 없는 웹 브라우저입니다.

sandbox

외부 변수와 독립 및 통제된 조건을 기반으로 하는 테스트 환경이나 상황. 주로 소프트웨어 개발 및 테스트에서 사용되며, 실제 환경에 영향을 주지 않고 안전하게 실험할 수 있습니다.

We need additional sandbox testing before the official launch. 공식 출시 전에 추가적인 샌드박스 테스트가 필요합니다.

legacy

낡고 오래된 기술이나 소프트웨어, 컴퓨터 시스템

We have to replace the legacy system by July as part of the integration process. 통합 프로세스의 일부로, 레거시 시스템을 7월까지 교체해야 합니다.

refactor

기존 코드를 변경하지 않고 구조를 개선하는 작업. 주로 코드의 가독성, 유지보수성, 성능을 향상시키기 위해 수행됩니다.

We need to refactor the code to improve its readability and maintainability. 코드의 가독성과 유지보수성을 향상시키기 위해 리팩토링이 필요합니다.

opinionated

소프트웨어나 프레임워크가 특정한 방식이나 패턴을 강하게 권장하는 것. 이는 개발자가 선택할 수 있는 옵션을 제한하여 일관된 개발 경험을 제공합니다.

An opinionated framework provides a specific way to structure your application. 의견이 강한 프레임워크는 애플리케이션을 구조화하는 특정 방식을 제공합니다.

monorepo

여러 프로젝트를 하나의 저장소(repository)에서 관리하는 방식. 이는 코드 공유와 의존성 관리를 용이하게 합니다.

A monorepo allows multiple projects to share code and dependencies easily. 모노레포는 여러 프로젝트가 코드를 공유하고 의존성을 쉽게 관리할 수 있게 합니다.

microservices

애플리케이션을 작은 독립적인 서비스로 분리하여 개발하는 아키텍처 스타일. 각 서비스는 독립적으로 배포되고 확장될 수 있습니다.

Microservices architecture allows for independent deployment and scaling of services. 마이크로서비스 아키텍처는 서비스의 독립적인 배포와 확장을 가능하게 합니다.

serverless

서버 관리 없이 애플리케이션을 개발하고 실행할 수 있는 클라우드 컴퓨팅 모델. 개발자는 서버 인프라를 신경 쓰지 않고 코드에 집중할 수 있습니다.

Serverless computing allows developers to focus on writing code without managing servers. 서버리스 컴퓨팅은 개발자가 서버를 관리하지 않고 코드 작성에 집중할 수 있게 합니다.

out-of-the-box

기본적으로 제공되는 기능이나 설정으로, 추가적인 구성 없이 바로 사용할 수 있는 상태. 주로 소프트웨어나 제품이 초기 설정으로 제공되는 경우에 사용됩니다.

The software comes with several out-of-the-box features that can be used immediately. 소프트웨어는 즉시 사용할 수 있는 여러 기본 제공 기능을 포함하고 있습니다.

unit testing

소프트웨어의 개별 구성 요소(유닛)를 테스트하는 과정. '단위 테스트'라고도 하며, 주로 코드의 특정 기능이나 메서드가 예상대로 작동하는지 확인하기 위해 사용됩니다.

Unit testing helps ensure that individual components of the software work as intended. 유닛 테스트는 소프트웨어의 개별 구성 요소가 의도한 대로 작동하는지 확인하는 데 도움을 줍니다.

end-to-end testing

소프트웨어의 전체 흐름을 테스트하여 실제 사용자 시나리오를 검증하는 과정. 'E2E 테스트'라고도 하며, 시스템의 모든 부분이 함께 작동하는지 확인합니다.

End-to-end testing simulates real user scenarios to ensure the entire system works as expected. 엔드 투 엔드 테스트는 실제 사용자 시나리오를 시뮬레이션하여 전체 시스템이 예상대로 작동하는지 확인합니다.

pull request

소스 코드 관리 시스템에서 변경 사항을 제안하고 검토를 요청하는 과정. 주로 팀원들이 변경 사항을 검토하고 병합하기 전에 사용됩니다.

A pull request allows team members to review and discuss changes before merging them into the main branch. 풀 리퀘스트는 팀원이 변경 사항을 검토하고 논의한 후 메인 브랜치에 병합하기 전에 사용됩니다.

branching

소스 코드 관리 시스템에서 독립적인 개발 작업을 위해 코드의 분기를 만드는 과정. 주로 새로운 기능 개발이나 버그 수정을 위해 사용됩니다.

Branching allows developers to work on new features without affecting the main codebase. 브랜칭은 개발자가 메인 코드베이스에 영향을 주지 않고 새로운 기능을 개발할 수 있게 합니다.