Senior Software Engineer
Main Responsibilities:
• Develops 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.
• Determines operational feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions.
• Document and demonstrate solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code
• Be a persistent, creative problem solver
• 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
• Design, build, and maintain efficient, reusable, and reliable 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
• Collaborate with internal teams and vendors to fix and improve products
• Provide peer mentoring of more junior team members.
• Ensure software is up-to-date with latest technologies.
• Adherence to coding standards.
• Provide support for live systems, when needed.
Qualifications & Skills:
• B.S. in computer science, information technology, or related discipline
• 4+ years experience
• Strong knowledge on software implementation best practices
• Solid and deep understanding of OOP concepts and principles
• Good experience and understanding of software design patterns
• Strong proficiency in the .Net core framework and coding in C#
• Hands on experience with Angular.
• Experience with JavaScript libraries/frameworks e.g. jQuery, Typescript.
• Proficiency in SQL and database development.• In-depth knowledge of the Software Development Life Cycle (SDLC) and a thorough understanding of various phases, for example, Requirements, Analysis/Design, Development and Testing.
• Strong background in data modeling and database design concepts.
• Strong experience working in Agile environment and understanding of SCRUM process
• Experience with unit testing (nUnit, MSTest)
• Strong analytical and problem solving skills
• Experience in DDD is plus
• Experience in ASPNET Boilerplate is plus
Main Tools:
• MS Visual Studio
• SQL Server
• Azure DevOps
Andrii Parandii