BASIC FUNCTIONS : This position performs moderately difficult research, design, and software development assignments within a specific software functional area or product line.
The position should have the ability to work on individual pieces of work and solve problems including the design of the program flow of individual pieces of code, effective coding, and unit testing.
3+ years of Software Engineering experience
BS Engineering / Computer Science or equivalent experience required
TECHNICAL SKILLS :
Strong C# .Net development experience (SOLID, Design Patterns)
Familiar with .Net Core (have investigated in own time, keen to use going forward)
Excellent SQL skills / knowledge
Some mentoring / technical leadership or a desire to do this going forward
Work effectively in an Agile environment following and practicing Scrum processes
Experience with source control management systems and continuous integration / deployment environments using tools like TFS / Azure / GIT
Excellent communication skills, collaborative and able to inspire others
Familiarity of industry best practices code coverage.
Ability to work well with internal and external technology resources.
Ability to write and review portions of detailed specifications for the development of system components of moderate complexity.
Knowledge of data manipulation languages.
Knowledge of data storage subsystems.
Knowledge of test-driven development
Ability to complete moderately complex bug fixes.
Good oral and written communications skills.
Desirable : Entity framework, Azure, Message Q’s, Microservices, CI / CD
Interface with other technical personnel or team members to finalize requirements.
Write and review portions of detailed specifications for the development of system components of moderate complexity.
Work closely with other development team members to understand moderately complex product requirements and translate them into software designs.
Successfully implement development processes, coding best practices, and code reviews.
Contribute to product vision and roadmap by bringing innovation to the team
Resolve technical issues as necessary.
Keep abreast of new technology developments.
Complete bug fixes.
All other duties as assigned.