Lead Software Engineer - Ageatia Technology Consultancy Services
Reston, VA
About the Job
Job Title: Lead Software Engineer -- Hiring Now!! 2+ Position requiring IMMEDIATELY !!!
Job Description:
PURPOSE:
Performs complex analysis, design, development, automated unit and integration testing, and debugging of computer software ranging from operating system architecture integration and software design to selection of computer systems, language, and/or equipment. Designs, codes, tests, develops, and documents application programs for computer systems. Works with end-users and project stakeholders to define system scope and objectives. Manages modifications to and maintenance of operational programs and procedures. Leads stakeholder and product owner meetings to define software requirements and creates highly complex systems. Acts as a mentor to junior engineers
ESSENTIAL FUNCTIONS:
25% Lead a team of software engineers in the design, development, and implementation of multiple applications. Performs and leads the detail technical design, coding, code review and testing of new applications and enhancements of existing applications. Serves as a subject matter expert for specified systems and their subsequent applications. Develop and/or analyze interface design documentation. Comply with hardware and software systems standards and procedures. Deliver large systems for tens of thousands of users. Ensures compliance to the dev/sec/ops practices and policies. Understanding of architectural practices and design.
25% Identifies gaps in requirements and solves problems for the supporting staff. Identifies sequencing of services and technologies that are integrated in later phases of the project. Leads the evaluation of risk and opportunity impacts to existing or proposed projects/programs and implements risk mitigation actions. Develops ways to improve performance and increase system availability. Provides recommendations to infuse new technology. Compile, assess, and report data results from software testing and analysis.
25% Supports the Project Manager as the technical team lead on the project. Estimates the technical costs of projects for clients and project managers. Confers with clients to identify requirements and determine desired outcomes to formulate the design of the system or offer alternatives. Demonstrated experience with front-end and back-end programing and integration frameworks and tools. Assist in the estimation of development of application features.
25% Leads software design and development teams. Identifies, analyzes, defines, and coordinates user, customer, and stakeholder needs and translates them into technical requirements. Manages technical resources (hardware, software, licenses, and services). Plans and leads transformation initiatives to new software architectures. Extend open-source libraries and systems as necessary to meet the needs of the team. Play a crucial role in product scoping and roadmap / architecture discussions. Continually evaluate emerging technologies to identify opportunities, trends, and best practices. Ensure code quality, deployment standards and practices. Mentoring junior developers.
What we look for
Qualifications
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
Education Level: Bachelor's Degree
Education Details: Information Technology or Computer Science
Experience: 8 years Software design and development, software test and evaluation, software requirements management
In Lieu of Education
In lieu of a Bachelor's degree, an additional 4 years of relevant work experience is required in addition to the required work experience.
Preferred Qualifications
Knowledge, Skills and Abilities (KSAs)
Works closely with Architects, Product Owners, Scrum Masters, and Value Stream Managers to provide insight into delivering business value and meeting objectives., Expert
Decomposes functional and technical requirements into project activities and tasks and provides conceptual design, prototype, and test cycles appropriate to a chosen technical solution., Expert
Identifies technical risks and develops mitigation strategies; introduces and recommends industry best practices and standards for the project., Expert
Evaluates and assists in the selection and procurement of hardware and software technologies and serves as a mentor for junior developers., Expert
Works with stakeholders as well as technical and analytical counterparts to define constraints and develop requirements and concept of operations documentation., Expert
Knowledge of cloud technologies ( e.g. AWS, Azure), Advanced
Knowledge of database technologies (e.g. cloud, SQL, Oracle, Mongo DB, PostgreSQL, etc.), Advanced
Fundamental knowledge of software engineers' best practices, agile methodologies, CI/CD pipelines, Advanced
Knowledge of test-first practices including Test-Driven Development (TDD) for unit tests and Behavior-Driven Development (BDD) for automated acceptance tests, Advanced
Strong experience with Deployment/Continuous Integration/ Continuous Testing/ Continuous Delivery processes and tools and have expertise in CI/CD tools and framework, Advanced
Experience with deploying a global application and configuration management, Advanced
Reviewing the work of other developers and providing feedback, Expert
Ability to communicate technical requirements to all levels of expertise., Expert
Proficient in establishing and maintaining good working relationships., Advanced
Knowledge and understanding of software development life cycle (SDLC)., Expert
Proficient with integrating complex and/or existing systems., Expert
Knowledge of programming languages (e.g. JavaScript, C, Python, etc.)., Expert
Excellent communication skills both written and verbal., Expert