The Senior Software Engineer designs, develops, troubleshoots, debugs, and sets the direction for the design and implementation of software features/functionality/enhancements, correction of defects, and/or the creation of new products. Develops software tools including operating systems, compilers, routers, networks, utilities, databases, and Internet-related tools. Determines software’s compatibility with hardware and/or influences software's design in relation to hardware.
Position Reports to: Manager, Software Engineering
Job Overview:
The Senior Software Engineer designs, develops, troubleshoots, debugs, and sets the direction for the design and implementation of software features/functionality/enhancements, correction of defects, and/or the creation of new products. Develops software tools including operating systems, compilers, routers, networks, utilities, databases, and Internet-related tools. Determines software’s compatibility with hardware and/or influences software's design in relation to hardware.
Essential Duties and Responsibilities:
Review and provide feedback on designs.
Takes ownership of the design and development of features within their component.
Recognizes and practically solves for anti-patterns.
Good understanding of how his/her work aligns with high-level use cases and team deliverables.
Define (more than a feature, less than a product) a component that fits into an architecture.
Describe and defend design decisions for components owned by the team.
Optimize software design to leverage platform capabilities.
Acts as the technical subject matter expert for a product domain.
Quantify and communicate work estimates and risks to direct management
Handle multiple competing priorities with minimal help
Understand features as a whole and able to break down larger stories and features into tasks
Familiar with most of the technologies we focus on and what markets they target
Takes ownership of customer issues and effectively communicate with Support/SEs to resolve field questions/issues
Discuss with customers what larger concerns and problems they are trying to solve, over and above the immediate technical concerns
Willingness to teach and grow junior team members
Excellent listening skills
Effectively works within the team and across teams
Ensures all tasks are completed thoroughly and that any work done is tested, unit tested, documented, and ready for customers
Takes identified problems and concerns and create a plan to fix the problem and prevent it from occurring again
Follows through on all tasks
Reliably delivers expected work products and outcomes
Imparts a sense of urgency on junior team members
Required Qualifications:
Applied knowledge or z/series I/O technology and z/OS implementation to include:
Preferred Qualifications:
Writes code faster than the average developer.
Outstanding quality with few bugs in generated code.
Education: