Responsibilities
- Design and development of new application features from requirement specifications.
- Design and implementation of new database architectures, data access components and Web services.
- Maintenance of existing databases, data access components and Web services.
- Design and development of unit tests for new data access components, stored procedures and other components and services.
- Profile and optimize database access components and stored procedures.
- Contribute to the development of other software components and user interfaces.
Requirements
- Computer Science or Software Engineering Degree/Diploma.
- A passion for innovation.
- Ability to demonstrate good coding skills.
- Exceptional debugging and code/database optimization skills.
- 5+ years of experience as a software developer.
- Outstanding database design and implementation skills.
- Experience optimizing large databases containing 1 billion records or more and large text fields.
- Superior knowledge of MSSQL 2005-2008 R2 databases.
- Experience writing Transact SQL stored procedures.
- Significant experience with either ADO.NET Entity Framework or NHibernate.
- Experience designing and developing service oriented applications for the Microsoft .NET Framework.
- Expert knowledge of C# and the .NET Framework.
- Experience developing for Oracle 9i-11g databases.
- Experience writing PL/SQL stored procedures.
- A solid understanding of the software development process and best practices.
- Experience with WCF.
- Good knowledge of modern development processes.
- Excellent written and oral communication.
The following would be an asset:
- Java experience.
- Hibernate experience.
- Experience with SQL Full Text Search.
- Experience with Oracle Text.
- Good algorithm design skills.
- Experience with ASP.NET Forms and/or ASP.NET MVC Framework.
- Experience with WPF.
- C++ experience.
- Microsoft Certification: MCAD, MCSD or MCPD.