As an Experienced Software Engineer, you will work in a small close-knit and agile software development team, while using new technologies to ensure the compliance of interactions and accesses between various enterprise systems.
A typical day and responsibilities may include:
- Analyzing user requirements to derive software design and performance requirements.
- Debugging existing software and correct defects.
- Provide recommendations for improving documentation and software development process standards.
- Designing and coding new software or modifying existing software to add new features.
- Integrating existing software into new or modified systems or operating environments.
- Developing simple data queries for existing or proposed databases or data repositories.
- Writing or reviewing software and system documentation.
- Serving as team lead at the level appropriate to the software development process being used on any particular project.
- Designing or implementing complex database or data repository interfaces/queries.
- Developing or implementing algorithms to meet or exceed system performance and functional standards.
- Assisting with developing and executing test procedures for software components.
- Developing software solutions by analyzing system performance standards, conferring with users or system engineers; analyzing systems flow, data usage and work processes; and investigating problem areas.
- Modifying existing software to correct errors, to adapt to new hardware, or to improve its performance.
- Designing, developing and modifying software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.
- Designing or implementing complex algorithms requiring adherence to strict timing, system resource, or interface constraints; Performing quality control on team products.
- Implementing recommendations for improving documentation and software development process standards.
- Overseeing one or more software development teams and ensuring the work is completed in accordance with the constraints of the software development process being used on any particular project.
- Conferring with system engineers and hardware engineers to derive software requirements and to obtain information on project limitations and capabilities, performance requirements and interfaces.
- Coordinating software system installation and monitoring equipment functioning to ensure operational specifications are met.