Apply in-depth knowledge of multiple programming languages, associated frameworks, and the tool ecosystem to create elegant solutions to problems. - Adopt new languages and new paradigms applying them to the problem domain where they deliver significant benefit. - Test drive features in applicable programming language and be comfortable with the TDD cycle. - Shape the wider application landscape. - Apply distributed programming models (e.g. Actor frameworks) appropriately. - Model multiple domains, articulating contexts & boundaries and articulate the rationale behind them.