Software Engineer – Hybrid
This team is developing a cutting-edge Learning Management System (LMS) that enable the successful delivery of cyber security courses in Maryland, Georgia, Texas, and Hawaii. Team members will be part of a collaborative, multidisciplinary team delivering highly sophisticated, technical, hands-on training solutions to meet the mission and time-critical needs of our customers using customized solutions and modern software development frameworks. The team is focused on the development of tailored, high quality, timely software solutions for use by instructional staff members and students. The team implements all parts of the software development process; designing, developing, testing, deploying, and supporting end users. If you are a technical leader with a background in web application development, hands-on experience creating enterprise-level technical solutions, and are interested in a dual-hat role that requires both technical and leadership skills sets, then this is the position for you.
Work Schedule:
The Mangrove team supports flexible work hours as well as work-from-home options. It is expected that team members will maintain a stable work schedule and to be available for scheduled meetings as well as ad-hoc communications.
Essential Responsibilities:
A Mangrove technical leader’s responsibilities include: capturing and evaluating requirements from multiple customer bases; leading the team through epic and issue creation, planning sprint and release schedules; reviewing merge requests for accuracy, coding standards, and completeness; designing, implementing and testing new features and modifications to existing features; and ensuring that development efforts are performed in an efficient manner to meet LMS release schedules. Team members are expected to gain an in-depth understanding of the LMS system and be able to collaborate with other team members to determine the best path forward for new features or feature sets.
Work Environment and Location:
The Mangrove team works in both unclassified and SCIF air-gapped environments at a contractor site.
Compensation Details:
$215,000-$250,000
The compensation range or hourly rate listed for this position is provided as a good-faith estimate of what the company intends to offer for this role at the time this posting was issued. Actual compensation may vary based on factors such as job responsibilities, education, experience, skills, internal equity, market data, applicable collective bargaining agreements, and relevant laws.
Minimum Requirements (Knowledge, Skills, and Abilities):
- Minimum thirteen (13) years of applicable software development experience, including UX/UI design and development. A Bachelor’s degree in a Computer Science or related field can be substituted for three (3) years of experience. A Master’s degree in a Computer Science or related field can be substituted for eight (8) years of experience.
- Demonstrate knowledge of commonly used application programming languages, frameworks and components (to include, but not limited to: Python, shell scripting, Go, HTML, CSS, AJAX, JSON/XML, JavaScript/TypeScript and JQuery, Node.js, React/Redux, Node.js, SQL/NoSQL and relational databases, etc…).
- Demonstrate working knowledge of containerization services (such as Docker) and the ability to package, deploy, and maintain applications in containerized environments.
- Demonstrate working knowledge of Kubernetes, including deploying, managing, scaling, and troubleshooting containerized applications in cloud and on-premises environments.
- Demonstrate knowledge of virtualization services such as vCenter.
- Demonstrate the ability to design enterprise systems at a high level, to break complex problem sets into workable solutions, and to integrate multiple, independent systems into a cohesive whole.
- Demonstrate an understanding of 508 compliance requirements as they relate to UX/UI design and implementation
- Experience leading a small team that performs development work with agile methodologies
Security Clearance Required:
- TS/SCI
Minimum Education:
- Master’s degree in Computer Science or related field and five (5) years of applicable software development experience is required. OR
- A Bachelor’s Degree and five (5) additional years of experience is acceptable for a total of ten (10) years of applicable software development experience. OR
- Three (3) years of experience may be substituted for a bachelor’s degree is acceptable, for a total of thirteen (13) years of applicable software development experience.
Minimum Years of Experience:
- (5) years of applicable software development experience is required. Experience developing using one or more of the following languages or frameworks: Javascript/Typescript, Go, React/Redux, Node.js.
All team members regardless of their specialization will be expected to:
- Demonstrate the ability to parse and understand existing code bases, contributing to the continued development of class management tools the LMS
- Perform trend analysis of student activities and identify potential improvements to course delivery systems and interfaces
- Develop software solutions using languages such as Python, Shell scripting or Node.js
- Develop and deploy applications, services, and systems within virtualized environments such as Kubernetes, vSphere and Docker
- Create and manage applications using industry standard package managers (apt, yum, pip, npm, nuget, etc…)
- Show proficiency in using source code management systems, with a focus on Git
- Apply valid software development pipelines to develop, test, document and deploy projects
- Use and receive tasking through project management systems such as Jira or GitLab
- Provide comprehensive documentation and support for various levels of customers
- Be a self-motivated individual that can think outside the box to stay ahead of issues that could prevent the successful delivery of course material and activities while supporting the team as a whole
- Learn about the other specializations to better work with and support other development efforts
- Provide recommendations for technical solutions to a wide range of difficult problems
- Lead development activities, showcasing the ability to guide and manage software engineering projects
- Mentor junior team members
Preferred Qualifications:
The Mangrove team positions require fully cleared individuals with an extensive range of experience and abilities to develop web-based applications. As a team we implement and support all stages of the Software Development Lifecycle and recognize the benefit of having team members that specialize in specific stages of that cycle. As a technical team lead, you will:
- Acquire and maintain a deep understanding of the Mangrove product, its interfaces and sub-systems, and the services with which it interacts
- Guide the team through all stages of the software development life cycle, focused on designing new and updating current feature sets and gathering and prioritizing new feature requests and bug tickets along with the product owner
- Create epics and issues for new feature requests and bug tickets
- Create and update documentation for the Mangrove product and its features and capabilities
- Review merge requests for correctness, coding standards, and completeness
- Create release candidates for review by the product owner
- Develop and implement test beds and use test suites such as Jest, jUnit or PyTest for robust testing practices
- POLY preferred
Runavir is proud to be an Equal Opportunity Employer. Our hiring practices provide equal opportunity for employment without regard to race, sex, sexual orientation, pregnancy (including pregnancy, childbirth, breastfeeding, or medical conditions related to pregnancy, childbirth, or breastfeeding), age, ancestry, United States military or veteran status, color, religion, creed, marital or domestic partner status, medical condition, genetic information, national origin, citizenship status, low-income status, or mental or physical disability so long as the essential functions of the job can be performed with or without reasonable accommodation, or any other protected category under federal, state, or local law.