I apprenticed with 8th Light from July to November 2017. 8th Light is a consultancy with offices in four cities, and has a strong commitment to principles of clean code, simple design, and craft. While there I learned about agile development, using story point estimation and test-driven development to incrementally design simple, easy-to-change code in response to the needs of my "customers" (the software developers who mentored me.)
Three hundred people apply to be apprentices at 8th Light each month. To get into the program, I submitted a tic-tac-toe game in Clojure, and the projects I worked on while there included a second tic-tac-toe program in Ruby and an http server in Java, written from sockets up. I also kept a blog of my observations and questions. My github profile is here.