Position: Senior Database Developer
Company: Eleks
Experience required: 3y
English level: intermediate

Requirements:
- Good knowledge and experience with SQL
- .NET/SQL coding skills
- Experience with Azure Webapps or Azure Functions in C#
- At least Intermediate higt level of English
- Experience with Azure SQL

Responsibilities
- Develop solutions and algorithms according to technical specifications or other requirements documentation; use standard algorithms in the applicable cases
- Write program code according to the defined application architecture.
- Possess knowledge of software development methodologies (Waterfall, Agile, etc.)
- Structure and format the source code, comment and mark up the code, as well as name variables, functions, classes, data structures, and files according to the company conventions and industry best practices
- Implement code refactoring and optimization methods. Post refactoring and optimization results to the collective knowledge base as the best practices. Modify existing software code and test its availability. Analyze software code compliance with readability and performance standards
- Use version control systems to track code optimization progress, as well as to merge or split code entities. Commit changes according to version control rules
- Perform analysis, verification, and debugging of the software code at the level of application units
- Develop procedures to test code availability, collect diagnostic data, generate test data sets with desired characteristics; examine the required software characteristics etc
- Reproduce defects logged in the defect database, establish their causes, and modify code to eliminate defects
- Determine software product compliance with the technical requirements.
- Collect and analyze results of software tests. Deliver correct interpretation of diagnostic data; analyze the significance of the obtained software characteristics; can document test results. Assess software product availability
- Develop, document, and edit programming interfaces, software modules and components assembling procedures, software deployment and update procedures as well as data migration and transformation (conversion) procedures
- Assemble software modules and components into software product; connect software product to the external environment. Test availability of software product versions
- Analyze variants of software requirements implementation; evaluate their time-consumption and workload. Conduct assessment and justification of the solutions recommended for software requirements implementation
- Approve technical requirements for software with stakeholders. Evaluate and justify terms of task completion. Assign tasks to developers, monitor task implementation.