What We Do: The SEI helps advance software engineering principles and practices and serves as a national resource in software engineering, computer security, and process improvement. The SEI works closely with defense and government organizations, industry, and academia to continually improve software-intensive systems. Our core purpose is to help organizations improve software engineering capabilities and develop or acquire the right software, defect free, within budget and on time, every time.
This position is for technical staff with a background in Software Architecture to support the Advanced Software Development and Analysis group within the Client Technical Solutions (CTS) Directorate. This group has expertise in the areas of software architecture, development and engineering including the ability to evaluate source code using both static and dynamic analysis methods for Department of Defense (DoD) and Other Government Agency customers.
You will be responsible for the evaluation of existing software architectures, development of architecture roadmaps for system modernization, and the design, development, and oversite of software reference architecture specifications. Maintains knowledge of current and developing technologies, design and analysis methodologies. Develop and tailor models, methods and guidelines to specify and evaluate software architectures. Work effectively in the contexts of System, System-of-systems (SoS), and Enterprise Architectures.
This role will offer technical analysis and recommendations to customers on mission-critical solutions.
- Develop and enhance the state of Software Architecture and Engineering practice through the adoption, tailoring, and development of new/emerging analysis, development, and evaluation methods.
- Lead and develop various software architecture products, including Software Architecture Description documents
- Analyze conflicting requirements and formulate architectural solutions to balance diverse quality attribute and design constraint trade-offs
- Perform technical assessments, trade-studies, white-papers, and other technical analysis activities
- Perform technology evaluation and technology insertion planning activities.
- Perform analytical studies, conducts tests, develops detailed specifications, prepares detailed analytical report of findings, assists in the planning and development of architectural studies and projects
- Develop Software & System Architecture Views, using various architecture modeling methods and tools
- Diagnoses software requirements, and cyber-security conformance issues; leads the development of design improvements
- BS in computer science, software engineering, computer engineering, or a related quantitative field of study with ten (10) years of applicable experience or MS with eight (8) years of applicable experience.
- Willingness to travel to various locations to support the SEI’s overall mission. This includes within the SEI and CMU community, sponsor sites, conferences, and offsite meetings on occasion. Will be required to travel on overnight assignments, occasionally for several days.
- You will be subject to a background check and will need to obtain and maintain a Department of Defense security clearance.
- 5+ years in developing software architectures in a complex system
- 10+ years software development experience
- 5+ years hands-on experience designing, writing, testing, and fielding software using one or more of the following languages: C/C++, SQL, Java, PHP, C# or Python
- Experience with a variety of system and software quality attributes (e.g. availability, security, performance, safety, maintainability, openness, extensibility, etc.) and their supporting architecture mechanisms, patterns, and trade-offs
- Experience with System, SoS, and Enterprise Architectures
- Experience developing software using various approaches to software development (e.g. Agile, Incremental, Waterfall)
- Experience working with embedded, real-time, fault tolerant software
- Excellent technical written and oral communication skills
- Background with DoD systems.
- Experience design and evaluating software architectures using methods such as QAW, ATAM, SAAM or ARID.
- Experience in technical leadership in a software or systems engineering and /or program management environment.
- Experience with software architecture tools and techniques, including the Unified Modeling Language (UML) and tools such as Enterprise Architect, Rational Rose or similar
- Ability to work on problems of diverse scope where analysis of the client's data requires innovation, creativity and an evaluation of various factors
- Advanced degree in Computer Science, or Math, Engineering, and Science.
Job Function Breakdown
85% - Tech Lead - Participate as a leader or member of dynamic technical teams in support of government acquisition programs
10% - Staff Leadership - Identify and support the implementation strategies for the collection and application of learning and knowledge transfer from assignments (e.g. dissemination of research results, case studies, guides, reports, presentations, articles, workshops, courses, and blog entries).
5% - Other - Duties as assigned by the responsible Director, or Deputy Director
Please visit “Why Carnegie Mellon” to learn more about becoming part of an institution inspiring innovations that change the world.
A listing of employee benefits is available at: www.cmu.edu/jobs/benefits-at-a-glance/.
Carnegie Mellon University is an Equal Opportunity Employer/Disability/Veteran.