Develop software solutions by studying information needs, conferring with users, studying systems flow, data usage, and work processes; investigating problem areas; and following the software development lifecycle.
Document and demonstrate solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code
Translate application storyboards and use cases into functional features/modules.
Identify, prioritize and execute tasks in the software development life cycle
Develop high-quality software by producing clean, efficient code
Ensure the best possible performance, quality, and responsiveness of applications
Identify bugs root cause and find appropriate solutions with no side effects
Help maintain code quality, organization, and automatization
Ensure software is up-to-date with latest technologies.
Adherence to coding standards.
Provide support for live systems, when needed.
Troubleshooting: Determining causes of operating errors and deciding what to do about it.
(0-3) years experience.
Good knowledge of OOP (concepts, techniques, principles, analysis, and design).
Excellent Problem-solving skills.
Knowledge of .NET Framework (.NET, .NET Core, Web API, and C#).
Knowledge of ORM Tools like Entity Framework Core and NHibernate.
Good knowledge of Angular2+ and front-end technologies such as JavaScript, HTML5, and CSS3.
Experience in working with the git code versioning tool.
Understanding of Domain Driven Design, CQRS, and Microservices is a plus.
Knowledge of MS SQL server is a plus.
Experience in ASPNET boilerplate is a plus.
Understanding Agile methodologies (SCRUM) is a plus.
Analytical, self-motivated, and with a positive work attitude.
Bachelor's degree in computer science, or equivalent