As a Software Engineer, you will be responsible for analyzing user requirements to derive software design and performance requirements, debugging existing software and correcting defects, and providing recommendations for improving documentation and software development process standards. You will design and code new software or modify existing software to add new features, integrate existing software into new or modified systems or operating environments, and develop simple data queries for existing or proposed databases or data repositories. Additionally, you will write or review software and system documentation, serve as team lead at the level appropriate to the software development process, design or implement complex database or data repository interfaces/queries, and develop or implement algorithms to meet or exceed system performance and functional standards. You will also assist with developing and executing test procedures for software components, develop software solutions by analyzing system performance standards, confer with users or system engineers, analyze systems flow, data usage and work processes, and investigate problem areas. You will modify existing software to correct errors, adapt to new hardware, or improve its performance, and design, develop and modify software systems using scientific analysis and mathematical models to predict and measure outcome and consequences of design. You will also design or implement complex algorithms requiring adherence to strict timing, system resource, or interface constraints, and perform quality control on team products. Furthermore, you will implement recommendations for improving documentation and software development process standards, oversee one or more software development teams, and ensure the work is completed in accordance with the constraints of the software development process. You will confer with system engineers and hardware engineers to derive software requirements and to obtain information on project limitations and capabilities, performance requirements and interfaces, and coordinate software system installation and monitor equipment functioning to ensure operational specifications are met. Finally, you will recommend new technologies and processes for complex software projects, serve as the technical lead of multiple software development teams, and select the software development process in coordination with the customer and system engineering, ensuring quality control of all developed and modified software.
Stand Out From the Crowd
Upload your resume and get instant feedback on how well it matches this job.
Job Type
Full-time
Career Level
Senior
Number of Employees
5,001-10,000 employees