Home > Careers > Career Opportunities > Senior Software Engineer
Senior Software Engineer
Position Title: Senior Software Engineer (Falls Church, VA)
Clearance: Agency Suitability
This senior software engineer will be a key member of the development team. You are right for this job if you like to translate functional requirements into smart technical design, build, test, and deploy enterprise level technical systems.
Develop prototypes and proof of concept models to support and solidify design decisions.
Analyze business processes and assist with the mapping of process.
Develop front-end connectivity to back-end relational databases for application data.
Enforce business rules and build transaction processing modules for the application.
Perform program technical design, coding, and testing functions within the application development process.
Work on a variety of platforms using a combination of development tools and languages.
Work with customers and users to evaluate, estimate and perform application development and/or business process change requests under the direction of the appropriate project manager.
Use structured methodologies throughout design, development, test and reengineering processes.
Lead in program design, coding, benchmark testing, debugging, and documentation.
Instruct, direct, and validate other software developers' work.
Mentor and guide application developers and junior team members.
Apply thorough technical knowledge and understanding of business applications required to facilitate the development of supporting knowledge architecture and standards.
Assist in component and data architecture design, software, production evaluation, and buy/build recommendations.
Provide direct estimates, such as time, percentage of project completion, etc. to lead and/or manager.
Participate in design reviews and code reviews/inspections.
Resolve highly complex issues, conducts advanced research, and recommends innovations.
Ensure completion of all development projects and deliverables.
Review source code to determine root cause and recommends innovative solutions.
Professional track record should demonstrate that of a top-performer in current and past software development roles. Should have thorough understanding of software architecture and experience building highly scalable software systems:
10+ years experience in software development
Proven experience in Technical Management
Ability to design user interface and systems architecture for complex application development projects as well as analyzing, mapping and reengineering complex business processes.
Expertise in software architecture
Experience leading a Java development team
Oracle Forms and/or ADF experience a major plus
Strong knowledge of Java and a wide range of Java/J2EE/JEE technologies such as JDBC, JNI, JSP/Servlets, JTA, JMS, JNDI, JMX, JAAS, and others. Knowledge of frameworks including Spring, Struts and Hibernate.
Strong problems solving skills.
Extensive experience with object oriented programming, knowledge of Design Patterns.
Bachelor's degree in computer science or equivalent experience
US Citizenship required