Description

  • Design, develop, and implement software for technology-based products or applications
  • Apply knowledge of programming techniques to plan, develop, test and document computer applications
  • Create, maintain and implement the source code
  • Design prototypes
  • Specify program unit structure and conduct verification on own designs
  • Be comfortable with uncertain, incomplete or ambiguous information
  • Analyze complex business needs presented by clients and contribute to the solution of complex technical problems with senior level skill
  • Develop novel and creative solutions to complex business and technical problems
  • Make decisions and recommendations taking into consideration an appropriate balance of business goals and technical goals
  • Modify methods, techniques and procedures to achieve desired results
  • Lead projects from a technical perspective and provide technical guidance to less experienced staff
  • Alter approach or recommend broader procedural changes to improve the effectiveness of the delivery team
  • Consistently produce output that is trusted as accurate, sound and viable
  • Provide leadership on projects relating to configuration, application and/or integration of company products to meet customer’s business requirements
  • Identify design problems and collaborate with others to resolve
  • Consult with others as required on matters with broad implications
  • Cultivate and contribute to our unique creative and collaborative culture and working environment
  • Be a role model for our values; developing others and building strong collaborative teams
  • Communicate thought leadership and standard processes both internally as well as externally

 

Qualifications

  • Ability to ensure software meets all requirements of quality, security, modifiability and extensibility
  • Proficient in .NET Framework or .NET Core
  • Experienced with WPF
  • Strong knowledge of SQL (MSSQL, MySQL)
  • Experience with data modeling and database design
  • Experience with software development lifecycle (SDLC) processes
  • Experience with Agile software development methodologies (SCRUM)
  • Experience with service-oriented architecture (SOA)
  • Experience in Security
  • Clear understanding of cloud and server-side application development and architecture
  • Familiarity with continuous delivery and deployment processes for SaaS and PaaS based solutions
  • Familiarity with continuous integration, deployment and release management tools
  • Proficient understanding of code versioning tools, such as Git
  • Excellent interpersonal relationship skills
  • Bachelor's or master's degree in computer science, Computer Engineering or equivalent
  • 6+ years of progressive software development experience
  • Experience working on complex software projects

Education

Bachelor's degree