Bachelor's degree in Computer Science, Computer Engineering, Software Engineering, Electrical Engineering, Wireless Engineering, Information Security, Mathematics, Digital Arts & Sciences, or related field required or recent grad within the last 12 months.
Familiarity with software programming languages like C++, Java, HTML5, and SQL.
Knowledge of embedded systems and real-time operating systems (RTOS).
Experience with peer reviews and defect tracking in software development.
Analytical thinking and problem-solving skills for software testing processes.
Responsibilities
Apply computer science and engineering principles in software development.
Collaborate with cross-functional teams to design hardware-software interfaces.
Support all phases of the software development life cycle for embedded software.
Develop test procedures and documentation for software programs.
Use modeling tools to conduct experiments and evaluate performance data.
Participate in peer reviews and track software defects.
Utilize a variety of programming languages across different platforms.
Benefits
Flexible work schedule with a 9/80 work regimen including every other Friday off.
Full Job Description
Job Title: Senior Associate, Software Engineering
Job Code: 40106
Job Location: Nashville, TN
Job Schedule: 9/80: Employees work 9 out of every 14 days - totaling 80 hours worked, and have every other Friday off
Job Description:
Apply computer science, engineering, and mathematical analysis concepts and principles in the development of software for the target application
Work closely with cross functional members of the engineering organization to develop and evaluate interfaces between hardware and software, and operational performance requirements and design of the overall system
Support and participate in all phases of the software development life cycle, including requirements analysis, design, implementation, integration, and test of embedded software for real-time control of advanced tactical radio equipment
Develop software test procedures, software programs, and related documentation
Utilize modeling tools and equipment to establish operating data, conduct experimental tests, and evaluate results
Participate in peer reviews, identify, track and repair defects
Utilize a variety of software languages (i.e., C++, C#, C, Java, Ruby, HTML5, XML, SQL, Perl, Python, Ajax, Qt) on Windows, Linux, mobile platforms, and embedded real time operating systems (VxWorks, Linux, QNX, Integrity, Windows CE, and others for Motorola, Intel, TI, and custom processor designs)
Qualifications:
To be eligible, applicants must be pursuing a Bachelor's degree in computer science, Computer Engineering, Software Engineering, Electrical Engineering, Wireless Engineering, Information Security, Mathematics, Digital Arts & Sciences or related field or have completed their Bachelor's degree within the last 12 months, regardless of age.
Preferred Skills:
One or more of the following: C++, C#, C, Java, Ruby, JEE, HTML5, XML, SQL, Qt, Windows, .NET, Unix, Linux, SOA, RTOS, Real-Time Controls, Wireless, Software Security, Robotics, OOA/OOD, Hadoop, Android, Embedded Systems