Cubic offers an opportunity to provide innovative technology for government and commercial customers around the globe, helping to solve their future problems today. We're the leading integrator of payment and information technology and services for intelligent travel solutions worldwide, and the leading provider of realistic combat training systems, secure communications and networking and highly specialized support services for military and security forces of the U.S. and allied nations. If you have an entrepreneurial spirit and thrive in an innovative environment, we want to talk to you about your next role at Cubic! We are seeking employees inspired by technology, and motivated by the rewards of hard work, commitment, teamwork, quality, integrity, and respect. We invite you to explore opportunities with Cubic.
Job Summary: Performs complex software engineering assignments. Provides technical guidance and leadership. Provides project coordination and supervision. Coordinates activities for proposals/new business. Defines budget and schedule constraints. This position typically works under general supervision and direction. Incumbents of this position will regularly exercise discretionary and substantial decision-making authority.
Essential Job Duties and Responsibilities:
* Coordinates and develops project concepts, objectives, specifications and resource needs. Prepares design specifications, analyses and recommendations. * Participates in the design, development, planning modification and/or improvement of software systems in accordance with Cubic engineering procedures. * Researches programming system failures and designs and programs solutions. Performs complex analysis of design programming. * Conceptualizes, develops and analyzes engineering designs, specifications and test plans for systems and advanced technology theory and knowledge. * Coordinates and contributes to compilation and writing of proposal documents. Prepares design proposals to reflect cost, schedules and technical approaches. * Recommends test control, strategies, apparatus and equipment. Defines test schedules and test data requirements. Test and documents results. * Prepares and develops software, codes software and design specific enhancements. * Maintains liaison with the customers, coordinators, subcontractors and vendor representatives. * Conducts in-House design reviews and technical meetings. Makes presentations before management and customers. * Monitors project status and progress and measure system performance. * Keeps abreast of improvements in software engineering. Identifies software engineering process improvement and supports the execution of them across the organization. * Provides mentorship to junior engineering staff. * Assumes additional technical responsibilities as needed.
Minimum Job Requirements:
Four-year college degree in computer science, computer engineering or other related technical discipline, plus a minimum of five years of related experience or a master's degree with at least three years of related experience. Experience to include specification, design and development of software systems. Requires proficiency using programming languages such as Java, "C/C++/C#," Product Lifecycle Management, graphics or other developmental software. May require ability to develop software in a Unix, Windows Server 2003/2008/Vista/XP/Windows 7 and up, Integrated Development Environments (IDEs) or other PC environment. May require experience with embedded processing. Ability to use PC software such as Microsoft Word/Project/Visio, database, spreadsheet and flowchart, and Computer Aided Software Engineering (CASE) tools. Effective written and oral communication skills required. Knowledge of customer needs and competing products desirable. Able to analyze and solve complex software engineering problems. Able to prioritize work and complete multiple tasks under deadline and budget guidelines. May be required to travel domestically and internationally to include working odd hours, in-line with customer requirements
The ideal candidate will have a background and familiarity with Embedded but a desire to straddle both Embedded and Application development. Linux and Windows development is required. Experience with the following is needed:
* Embedded Linux * Familiar with Board Support Packages to support propriety hardware and operating system * familiar with CORE/EMANE * embedded C/C++ applications * Firm understanding of C/C++ for both embedded and application development * experience with Software Defined Radio (SDR) * Collaborative and has the technical ability to participate in hardware and software design reviews to ensure technical quality. * Design, architect, and develop embedded firmware and software solutions following best practices * Provide integration assistance of kernel drivers / peripheral software with higher application layers * Support hardware bring-up verification with complete support packages including kernel, drivers, firmware and software
The description provided above is not intended to be an exhaustive list of all job duties, responsibilities and requirements. Duties, responsibilities and requirements may change over time and according to business need.
About Cubic Corporation
Cubic Corporation is a provider of integrated technology solutions to government and commercial customers.