Vacancy expired!
- Follows a disciplined Agile/Kanban software development process in task estimation, design, development, code reviews, unit/integration testing and defect fixing of products
- Thrives on an Agile/Kanban team
- Assists in the overall schedule estimations of product releases
- Assists with or creates technical design documents for the products
- Assists with software architecture and design documents for the products
- Works with senior staff to write code that adheres to the written specifications
- Initiates and/or participates in peer reviews of code design and written code
- Documents new/modified code, and develops/automates unit and integration tests to verify the changes
- Analyzes existing software to debug and troubleshoot field issues that may arise
- Eliminates and prevents technical debt
- Performs all other tasks as assigned
- Bachelor’s Degree in Computer Science/Engineering or related field or equivalent experience
- At least 10 years professional software engineering experience; including two or more products
- Proficient experience with C#, .Net framework (including WPF & WCF) and .Net core
- Advanced working knowledge of Object-Oriented Analysis and Design (OOAD)
- Experience with Debugging - GDB and Visual Studio
- Experience with Version control (SVN / GIT)
- Experience with Testing frameworks including GTest
- Experience programming on Linux or Windows platform
- Knowledge of design/modeling with tools such as UML
- Knowledge of and experience with design patterns
- Experience in network protocols a plus
- Experience in database design and development a plus
- Ability to keep up with new technologies/tools, and design techniques and lead adoption of those technologies with the team
- Excellent communication, planning and organizational skills
- Ability to work at a high level with minimal supervision
- Ability to work well in a team environment
- Experience with continuous integration systems
- Experience mentoring more junior developers