Job Description
Job Description
Senior Software Engineer
Who We Are: ThinkTek LLC is a fast-growing Certified SBA 8(a) and Service-Disabled Veteran-Owned Small Business (SDVOSB) company. We specialize in providing management and technology consulting services to support the business and technology modernization efforts of the Federal Government. ThinkTek was formed with the specific purpose of providing its clients a tailored solution around Program & Project Management, Strategic Planning, Systems Engineering, and IT Operations.
Position Description: ThinkTek is seeking a highly motivated Senior Software Engineer to support software architecture, engineering, and technical analysis support to assist the program in evaluating, designing, integrating, and improving software solutions. The role requires expertise in software architecture, systems integration, code review, performance analysis, and cybersecurity considerations for modern enterprise and simulation environments.
Key Responsibilities:
Architecture Review and Analysis
- Provide software architecture and engineering subject matter expertise.
- Review and analyze high-level architecture designs to ensure scalability, maintainability, and alignment with requirements.
Requirements Decomposition
- Decompose high-level program requirements into detailed technical specifications.
- Evaluate potential GOTS and COTS solutions against program requirements.
Code Review and Quality Assurance
- Review code developed by external vendors to ensure compliance with technical requirements and coding standards.
Technology Evaluation
- Test and evaluate proof-of-concept applications and emerging technologies.
- Provide recommendations on technical feasibility and system integration.
Performance and Security Assessment
- Analyze application performance, reliability, and security posture.
- Collaborate with cybersecurity teams to provide improvement recommendations.
Integration and Interoperability Analysis
- Review and assess architecture and design plans for integrating COTS/GOTS systems, APIs, middleware, communication protocols, and AI tools to ensure seamless data exchange and interoperability across simulations, software applications, and display systems.
Troubleshooting and Issue Resolution
- Investigate complex technical issues, system bugs, and operational anomalies.
- Provide recommendations for remediation.
Data Exchange Architecture
- Develop or recommend centralized methods for data transfer between software systems.
- Incorporate end-user feedback and program requirements into data architecture solutions.
Documentation and Reporting
- Document all:
- Technical analyses
- Requirement decompositions
- Code reviews
- Testing results
- Troubleshooting findings
- Provide clear reports and recommendations to leadership.
Required:
- Skills & Competencies:
- Strong expertise in software architecture, systems design, and technical analysis for complex software environments.
- Proficiency in modern programming languages (e.g., Python, Java, C++, JavaScript) with experience performing code reviews and quality assessments.
- Experience with system integration, including APIs, middleware, messaging frameworks, and communication protocols.
- Experience analyzing application performance, scalability, reliability, and security, and collaborating with cybersecurity teams on mitigation strategies.
- Experience designing or supporting data exchange architectures, including secure data transfer between distributed systems.
- Familiarity with software development lifecycle (SDLC), DevSecOps practices, and multi-vendor development environments.
- Clearance:
- Minimum Active
