Senior Software Developer will be designing software, database components following and participating with the teamrsquos Scrum process. Will conduct functional and empirical analyses using established procedures involving the design of new software products or enhancements to current products. Work in cooperation with other departmentsfunctions for research and development activities. Assists andor provides less senior developers guidance with their daily work activities. Remains abreast of current technological progress to ensure company's products remain marketable and competitive. Bachelors in Computer Science or equivalent 5 to 10+ years research andor development experience 5+ years of experience with relational database systems, including MS SQL, PostgreSQL, and MySQL Demonstrated experience and expertise programming in .NETC Experience C++ andor Java is an asset Solid knowledge of Microsoft SQL Server and MS TSQL. Solid knowledge of database design and well versed with SQL Server best practices Solid knowledge of scalability strategies. Knowledge on test automation, BDD, gherkin Strength in performance tuning especially around complex queries, procedure and indexing strategies Experience with multi-site multi-cultural team management Experience with SaaS technologies and infrastructures. Experience with Agile development practices. Excellent collaborative, communication, and interpersonal skills. Excellent analytical, communication and presentation skills. Understanding of enterprise application development, software as a service and enterprise security technologies Develop state of the art, cloud technology , large scale C .Net applications Gain awareness of complex product features and execution affecting product performance Work in cooperation with support teams to diagnose performance issues Design software and database components based on proposed release content and Marketing Requirements and best practices. Create logical models and build physical models for the database and plan system architecture. Socialize designs with team and integrate suggestions and changes as appropriate. Identify and implement performance improvements in both database and application Implement code and database changes in a timely fashion and with high quality, consistent with standards for the group. Unit test software components to insure module-level functionality and data structure consistency. Participate in test automation strategy and creation Resolve issues found during engineering test and QA in a timely manner, taking risk into account. Provide documentation as appropriate including design documentation, comments in code, inputs for External Specifications, Software Requirements Specifications, and end-user documentation. Consistent use of group tools such as Jira, Confluence, GitGitHub for tracking of defects and management of code. Participate in design and code reviews of other team members Independently manage time and prioritize tasks to achieve results within cost and schedule constraints. Provides work assistance to lower level engineers.