MMG has 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 your full-stack developer experience!
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