Senior Software Engineer C# .NET
Cendyn
Hyderabad, IN
1d ago

Job Purpose : This role is responsible for our primary stack of .NET and a broad array of other technologies to deliver our products.

We use C#, ASP.NET, Web API and Windows Services and SQL Server as our main data store. On the client side, we are using HTML, CSS, jQuery, Vue.

js and Bootstrap to create responsive interfaces. As a Senior Engineer you will be focused tactically on various projects.

We have a heterogeneous environment that includes some very legacy applications with more modern web solutions. Our flagship product (Guestrev) includes a C++ codebase that is 15+ years old and which is not going away in fact, we are probably going to be adding functionality to it.

I have found that standard full-stack developers whose experience is solely in Microsoft ASP.NET solutions can have trouble navigating and getting accustomed to the RevCloud software ecosystem.

Job Responsibilities : Essential Functions :

  • Collaborate with other developers and engineers to design, build, and maintain applications
  • Determine operational feasibility by evaluating analysis, problem definition, requirements, solution development and proposed solutions
  • Build applications for various platforms using common frameworks, including .Net
  • Write clean, testable code using .NET programming languages utilizing in-depth development, technical and design expertise in .
  • NET, ASP.NET, C# and SQL-Server

  • Contribute and conduct development tests including but not exclusive to unit, integration and system level
  • Follows company software development standards and best practices
  • Develop technical specifications
  • Estimates development tasks based on the appropriate business constraints
  • Review and refactor code
  • Document development and operational procedures
  • Reviews and validates implementations of self and others to ensure they meet requirements and match the specifications
  • Mentors and supports junior developers’ work
  • Enforces and evolves software development standards and best practices
  • Troubleshoot software issues
  • Provide on-call support as necessaryHere is a sampling of the things we routinely have to deal with :
  • Legacy C++ code that does not follow any modern patterns it’s enterprise software from circa 2005 that uses desktop clients, a windows service on the backend, etc.
  • There are also console applications that perform complex data science. We have a home-grown batch scheduler and other windows services, all in C++.

  • Several flavors of ASP.NET WebAPI services on several .NET platforms, including framework and net core.
  • Web applications written in ASP.NET MVC on .NET framework with Razor and jQuery, in Vue.js calling API services, and one app that is written in some older ASP technology that predates MVC.
  • Extensive use of SSIS in several products, and SSRS in one product.
  • An integrations code base, with most implemented in C#, but some in C++. This supports our integrations with customers’ third-party systems.
  • The C# uses home grown design patterns and is not structured in a way that a full-stack MVC developer can jump right in and understand how it works.

  • Our current development effort for Guestrev’s web UI (a redo of the UI, replacing the older MVC based site) is being done in Vue.
  • js with net core C# API’s and Dapper ORM, with a mixture of Azure-hosted serverless webapps and some hosted services in our production data center.

    Requirements : Required Education and Experience :

  • Bachelor’s degree or equivalent combination of education and experience
  • At least 5-8 years professional experience in all stages of definition, design, implementation, testing, and deployment of web-based software solutions
  • At least mid-level experience, preferably senior, but exposure to a variety of environments is a must
  • C++ is a must.
  • Ability to navigate a complex and heterogeneous software ecosystem is a must. The candidate is going to be asked to learn several products and supporting services and needs to be ready for that.
  • It’s not a job working only on one major new development effort.

  • Ability to quickly debug unfamiliar codebases in a support role is a must.
  • Experience in the following tools / technologies : ASP.NET, C#, SQL Server, .Net core, message queueing, HTML and JavaScript, knowledge design patterns and architectural concepts (MVC, DI, Restful API, Microservice)
  • Hands on experience using testing frameworks (i.e. NUnit, Visual Studio, xUnit, etc.) and TDD
  • Experience with Agile (Scrum) Software Development Process and methodologies
  • Experience with database management and security a plus
  • Experience with source control such as git or git hub and branching / merging best practices
  • Experience migrating or working with C++, SSIS or SSRS code is a plus
  • Analytical skills
  • Communication skillsPreferred Education and Experience :
  • Master’s degree or higherExpected Competencies :
  • Detailed oriented with strong organizational skills
  • Ability to pay attention to programming style and neatness
  • Strong English communication skills, both written and verbal
  • Ability to train, mentor junior colleagues with patience with tangible results
  • Report this job
    checkmark

    Thank you for reporting this job!

    Your feedback will help us improve the quality of our services.

    Apply
    My Email
    By clicking on "Continue", I give neuvoo consent to process my data and to send me email alerts, as detailed in neuvoo's Privacy Policy . I may withdraw my consent or unsubscribe at any time.
    Continue
    Application form