Summary of Position:
1. Write code.
2. Design and develop front-end interfaces, underlying APIs, and backend systems across a number of programming languages.
3. Participate in all phases of software development from product definition to production release.
4. Create and implement new software features while helping to maintain and improve legacy applications.
5. Work with QA teams to troubleshoot issues on software products and develop testing scenarios prior to coding, during sprint planning.
6. Provide accurate resource estimates, timelines and forecasts for development activities.
7. Author technical design documentation that fully define all application code and the underlying methodology for the design decisions.
8. Contribute to peer code review to ensure overall quality of software.
9. Work on concurrent tasks and/or projects where priorities often change.
Required Knowledge, Skills, Abilities (Qualifications):
1. Strong Computer Science fundamentals, including object-oriented design, data structures, and API design techniques.
2. Knowledge of professional software engineering including coding standards, code reviews, source control management, build processes, and testing.
3. Expertise programming in C#.
5. Experience with front-end web frameworks (Bootstrap) and web application frameworks such as ASP.NET MVC.
6. Working knowledge of relational and non-relational databases, and hands-on experience integrating data between multiple applications.
7. Excellent written and verbal English proficiency with the ability to communicate effectively.
8. Bachelor Degree in Computer Science, related technical discipline or equivalent practical experience
Preferred Knowledge, Skills, Abilities:
1. Experience programming in C++.
2. Experience with information retrieval techniques, including crawling and metadata usage.