Deep understanding with more than one programming language. Demonstrated success with system design, modeling complex domains, and making architectural decisions. Experience with or openness to collaborative programming (pair or mob programming). Ability to communicate clearly and work effectively with others. Full professional proficiency in English.