Description:
We are seeking a full-time, .NET Application Developer to help our customers manage their travel as efficiently as possible. The Application Developer will play a key role defining and implementing a robust software architecture combining IoT and analytics. As part of a small, passionate team, the Applications Developer must have initiative, drive, and a strong work ethic. The position balances a fast-paced work environment with doing things meticulously and properly; working independently within highly collaborative integrated teams; creating new code that is secure, auditable, and in direct contact with sensitive personal information.
The perfect candidate should love solving complex technical problems across all levels of software architecture, development, and debugging.
Key Responsibilities
- Developing, testing, and debugging software, components, tools, and utilities required for the operation, maintenance, and control of websites and applications.
- Analyzing system requirements and developing technical specifications and architecture.
- Develops technical solutions to moderately complex problems which require the regular use of ingenuity and creativity.
- Realize a modern architecture such as .NET or .NET Core while implementing best practices for the chosen architecture.
- Write clean, scalable, testable code, while being mindful of performance requirements.
- Revise, update, refactor and debug code and improve existing software.
- Maintain code integrity and organization.
- Maintain quality and ensure responsiveness of applications.
- Identify bottlenecks and bugs, and devise solutions to mitigate and address these issues.
- Create, maintain, and run unit tests for both new and existing code, with a goal of delivering defect-free and well-tested code to QA.
- Conduct design and code reviews and collaborate to ensure your own code passes review.
- Ensuring cross-platform optimization and responsiveness of applications.
- Collaborate with the rest of the engineering team and participate in requirements analysis to design and launch new features.
- Translate application storyboards and use cases into functional applications.
- Write and maintain documentation for new and existing features.
- Develop documentation throughout the software development life cycle (SDLC)
- Keep up to date on best practices and new technologies.
- Be available on occasion outside of standard business hours to support required business activities - production releases, calls with international stakeholders.
Experience & Qualifications
- Degree in Computer Science, Engineering, or a related field.
- 6+ years successful professional experience in dynamic web software development.
- Specialized in web development using ASP.NET, C#, .NET, .NET Core, .NET Framework, Visual Studio, HTML, CSS, JavaScript, jQuery, Bootstrap, SQL Server.
- Experienced UI/UX designer, front-end developer using ASP.NET, JavaScript frameworks, client-side template designing, databinding and script-based UI controls.
- Proficient in Analysis, Design and Implementation of databases using SQL Server database, and writing Stored Procedures, having firm understanding of relational database system with strong T-SQL experience.
- Extensively used LINQ and ORM tools like Entity Framework, ADO.NET to exchange data between web applications and database objects.
- Invoked Restful Web API services and implemented business logic in Web API to invoke database to retrieve data into entities.
- Knowledgeable in latest client-side open-source frameworks such as Vue.js, React, Angular and Knockout.
- Involved in translating the business requirements into technical design.
- Experience with design/architectural patterns (MVC, MVVM, Repository Pattern).
- Strong experience with Azure cloud offerings such as App Services, APIM, Azure Functions, Service Bus.
- Understanding and implementation of security and data protection.
- Solid Understanding of OWASP best practices.
- Knowledge of Identity Management for Web Apps and APIs, Single Sign On and MFA.
- Understanding of Agile/Scrum methodologies.
- Working experience in using version control tools like VS Team Explorer and GitHub.
- A self-motivated individual and a good team player with excellent communication skills, effective problem solving and ability to work independently.