프로젝트의 크기도 바뀌었다. 오늘날에는 다른 애플리케이션과 연계될 필요가 없는 애플리케이션이 매우 드물다. 무거운 클라이언트 애플리케이션을 각 단말에 배포하고, 대규모의 단일 데이터베이스로 통합되는 클라이언트-서버 모델 프로젝트도 찾아보기 어렵다. 오늘날의 프로젝트들은 여러 가지 기술들을 복합적으로 사용하고 복수의 정합(integration) 포인트를 두어 점진적이고 반복적으로 개발된다. 과거에는 개발된 애플리케이션의 사용자가 회사 내부인이거나 업무적으로 관계가 있는 사람인 경우가 대다수였지만 오늘날에는 전세계 수백만 명의 일반인들이 애플리케이션을 사용하고 있다. 배포된 애플리케이션에 버그가 있으면 기업 이미지에 큰 타격을 주거나 기업의 존폐를 위협할 수도 있다.
소프트웨어 업계는 소프트웨어 개발 방식이 프로페셔널하게 바뀌도록 압력을 받고 있다. 기업들은 이제 시키는 일만 하는 값싼 코더가 아니라 프로페셔널 개발자를 원하고 있는 것이 요즘의 현실이다.
다행히도 산업혁명의 유산(명령과 통제, 깊은 계층 구조, 관리자와 공장 노동자)을 뒤로하고 기민하고 빠르며 협력에 기반을 둔 환경으로 소프트웨어 업계가 진화하고 있다. 소프트웨어 개발자의 권한 영역이 더 넓어지고, 책임은 더 무거워지고 있다. 이러한 변화는 소프트웨어 개발자로서의 커리어에 자부심을 느끼고 개발자로서의 커리어를 계속 발전시키는 원동력이 되었다. 정적인 계획과 엄격하게 정의된 절차에 기반하여 진행된 프로젝트에서도 여러 문제들이 발생하여 이제는 재평가되고 있다. 대신 수평적인 조직 구조와 스스로 동기가 부여된 재능있는 개발자로 구성된 프로젝트가 새로운 표준으로 자리잡고 있다. 기민하고 정교하게 잘 만들어진 소프트웨어에 대한 요구가 그 어느 때보다 높다.