Description

• Performing as a domain expert in one or more parts of the software lifecycle (e.g., coding, testing, deployment). Leads significant pieces of development within the development lifecycle
• Contributing to the development of standard methodologies within your group
• Leading code reviews and actively participates in providing feedback on others’ designs/code
• Being accountable for technical debt in your own software
• Leading a small project team, as required
• Taking control of complex problems and step through them in a rational way
• Making tactical vs. strategic trade-offs
• Being flexible in your thinking; able to evolve a solution when additional information or ideas are presented
• Mentoring junior members of the team
• Identifying when junior engineers need help and providing it in a positive way that promotes confidence.
• Actively helping team members/make suggestions to improve practices.
• Providing on-call support as needed

Business Knowledge
• Able to work directly with business partners
• Decisions show a focus on current and future business priorities, together with fiscal responsibility
• Can articulate business needs and translate them into technology solutions

Requirements
• BS or MS Degree in a technical discipline and 5+ years of demonstrated hands-on software engineering experience. Additional experience may substitute for degree.
• Experience in at least one modern programming language (C# /.Net preferred)
• Experience developing (or desire to learn) APIs is required.
• Knowledge of SQL, Relational Database Concepts and Stored Procedures
• Experience building applications and deploying to public or private clouds, such as Amazon Web Services (AWS), Microsoft Azure, or similar providers preferred
• Reporting and Analytics experience preferred
• Strong Test-Driven Development and desire to write simple, adaptive and iterative code.
• Experience working in a dynamic, fast-paced, Agile team environment
• Enthusiasm for learning & results oriented
• In-depth knowledge and expertise in your job discipline and working knowledge of related disciplines
• Stays up to date with new technologies
• Programs proficiently in several languages (C# .Net preferred) and is comfortable switching between them
• Shows dedication to quality by implementing suitable software using unit/integration and acceptance testing at the time of feature development
• Develops data models or schemas from scratch and knows of key concepts such as ACID, Normalization, and Transactions
• Debugs large components with limited assistance and assists other engineers
• Designs and develops practical APIs and abstractions

Education

Bachelor's Degree