MMGhas an immediate opening in our Rockville, MD office for a full-time senior software engineer. Our successful candidate will have experience in . NET software development, possess an in-depth understanding of SOLID principles and design patterns, and a thirst for cutting-edge technologies. If selected, you will contribute to the implementation of new software code (. NET, C# and JavaScript) while also leading developers through code enhancements and changes against legacy systems, eventually retiring legacy functionality. We work in a flexible, fast-paced environment, with a passion for best practices and doing things the right way. If this sounds like the position for you, we are interested in talking to you and learning about yourfull-stack developerexperience!
Responsibilities:
Help implement RESTful services to encapsulate legacy system functionality in a way that can later be transitioned to new back-end implementations
Document generic solutions extrapolated from client-specific requests to consider in new development efforts
Participate in prototyping exercises with new technologies and brainstorming/design sessions for new development projects
Contribute to software development process change and DevOps discussions
Implement specific development tasks for new development projects that use SPA and RESTful services
Develop and maintain shared code libraries using linked repositories and NuGet
Help developers with use of shared libraries and identify opportunities for reusability
Lead client project development efforts that create efficiency while managing overall complexity
Work with project managers and business teams to help design and plan technical solutions to business problems within legacy architecture
Participate in sprint planning meetings to contribute with estimations and create plans for high-risk development tasks
Be responsible for all high-risk implementations including coordinating tasks across multiple developers
Gain thorough understanding of legacy systems and core business functions in order to provide informed suggestions and solutions
Perform code reviews and mentor other developers
Advocate and champion use of industry best-practices, high-quality code, and compliance with department development processes
