CAA Programmer CATIA
Save this job and keep your search organized
Create a free account to save jobs, create alerts and return to this listing from your dashboard.
By continuing, you agree to our Terms & Privacy Policy.
Job Title: CAA Programmer – CATIA / ENOVIA CAA, C++, Unix/Linux
Location: Seattle, WA / Remote
Employment Type: Full-Time / Permanent
Experience Required: 5–13 Years
Job Summary
We are seeking an experienced CAA Programmer with CATIA / ENOVIA application development and maintenance experience to design, develop, test, implement, and support complex engineering software applications. The ideal candidate will have strong programming skills in C and C++, experience with Unix-based platforms, and expertise in software maintenance, application architecture, system compatibility, and legacy application modernization.
The role involves maintaining the CADDStation application ecosystem, supporting applications running on Solaris and Linux environments, resolving complex technical issues, and enhancing software functionality and performance for electrical engineering systems.
Required Technical Skills
Programming: 5+ years of programming experience with C and C++ across native Unix platforms.
CATIA / ENOVIA CAA: Experience with CATIA and ENOVIA Component Application Architecture (CAA), customization, or related engineering application development.
Unix/Linux/Solaris: Experience with Unix-based systems and operating systems such as Solaris, Linux, and Windows.
Application Maintenance: Experience supporting complex applications, troubleshooting software issues, refactoring code, and maintaining application performance.
Software Architecture: Strong understanding of application design, software/hardware compatibility, system integration, and technical solution development.
Web Application Development: Experience developing and maintaining web applications using Java or other modern programming languages.
Relational Databases: Experience with SQL Server, Oracle, Teradata, or similar relational database platforms.
Configuration Management: Experience with Git, Visual SourceSafe, ClearCase, SCCS, or comparable version control tools.
Project and Quality Tools: Familiarity with Team Foundation Server (TFS), Quality Center, or similar project and quality management tools.
Technical Documentation: Ability to create technical documentation, architecture diagrams, and presentations using Microsoft Word, Visio, and PowerPoint.
Key Responsibilities
1. CAA and Engineering Application Development
Design, develop, test, implement, and document complex engineering software applications.
Support CATIA / ENOVIA CAA-related applications and engineering system integrations.
Analyze end-user workflows and translate business and engineering requirements into technical solutions.
Enhance application functionality, reliability, maintainability, and performance.
2. CADDStation Ecosystem Maintenance
Maintain and support the CADDStation suite of applications in the Solaris environment hosted on Linux infrastructure.
Monitor application health, investigate incidents, and resolve complex software and platform issues.
Support system upgrades, application refactoring, and compatibility improvements.
Maintain the functionality and performance of applications supporting electrical engineering systems.
3. Unix/Linux Development and Troubleshooting
Develop and maintain software solutions across native Unix and Linux platforms.
Analyze and resolve complex programming, operating system, and application architecture problems.
Identify hardware and software compatibility challenges and recommend effective solutions.
Support platform upgrades and application modernization initiatives.
4. Database and Web Application Support
Develop, enhance, and maintain applications that interact with relational databases.
Support web application development using Java or other modern programming languages.
Troubleshoot application and database integration issues.
Improve application stability, performance, and overall software quality.
5. Configuration Management and Quality
Use version control and configuration management tools to maintain source code integrity.
Participate in software testing, implementation, release management, and documentation.
Identify recurring issues and recommend process, architecture, and application improvements.
Collaborate with techn