Job Details
Experience Needed:
Career Level:
Education Level:
Salary:
Job Categories:
Skills And Tools:
Job Description
- Gather and assimilate information from all stakeholders.
- Conduct scheduled orientation meetings to transform the technical aspects needed to be applied to the team members.
- Improve the current existing architectures and frameworks.
- Provide a technical document that represents the recommended architecture for new products or for any strategic lines.
- Communicate and facilitate complex technical ideas in a straightforward way.
- Refactor the needed modules for improvement and easier for maintainability.
- Revamp the painful areas in the products in case there’s a need for that.
Job Requirements
- Bachelor's degree in computer science and information/computer
- 10 - 15 years of experience in software development career and at least 5 years in team leading position or higher.
- Deep Experience in .NET frameworks.
- Deep Experience in the following languages: C#, Angular TS, Angular JS, JQuery, Javascript, ASP.NET web form, ASP.NET MVC, Telerik controlbox, Telerik reporting
- Deep Knowledge in the following aspects
- Service-Oriented Architecture (SOA).
- Microservices.
- Event-Driven Architecture and Event-Sourcing.
- Monolithic Architecture.
- Onion Architecture.
- Domain-Driven Design.
- Software Development Life Cycle.
- Enterprise Service Bus.
- Software Principles.
- Software Design Patterns.
- Good understanding of separation of concerns and related topologies.
- Good knowledge of dependency injection frameworks like (Windsor, Ninject, Unity, etc …)
- Good understanding of the different caching techniques for the web farm hosted behind the network load balancer (NLB).
- Good awareness of the software refactoring and revamp methodologies.
- Good knowledge of Windows
- Good understanding of the different hosting types (dedicated servers, custom hostage like aravixe, cloud hosting like Azure and hybrid environments)
- Knowledge in cloud architecture and computing is a plus.
- Good communication with clients/operational managers – listening and providing answers.
- Strong problem-solving
- Ability to build good relationships with clients/operational managers and colleagues.
- Up to date knowledge of technical applications.
- Up to date with modern software design and architecture methodologies.
- Up to date with the latest technologies that suit the medical business domain.
- Ability to manage time between teams and tasks.
- Good knowledge of quality standards and best practices.
- Ability to be adapt and prioritize.
- Ability to work under pressure and meet deadlines.
- Ability to think ahead and anticipate problems, issues, and solutions.