Good programming lies at the heart of any software product. Good programming alone is not enough, though. Code must be scalable and maintainable. Software engineering is the practice of taking great code and turning it into a successful, scalable, and maintainable product.
I help teams up their software engineering game by focusing on the best practices and processes around writing code that make it more scalable and maintainable. These include writing tests, improving code reviews, creating a robust deploy process, continuous integration (CI), writing great specification documents, reviewing them, and writing more readable code.