This role performs complex research, design, and software development assignments within a software functional area or product line, and provides direct input to project plans, schedules, and methodology in the development of cross-functional software products
This role performs software design typically across multiple systems; mentors more-junior members of the team; and talks to users/customers and translates their requests into solutions
Responsibilities:
Design, write, test and deploy production-ready code primarily using Python SQL.
Be an active member of the technical team, contribute ideas and insight in standups and meetings, ask questions, review pull requests, analyze bugs and fixes, and help users and teammates.
Interface with other technical personnel or team members to finalize requirements.
Write and review portions of detailed specifications for the development of complex system components.
Complete complex bug fixes.
Work closely with other development team members to understand complex product requirements and translate them into software designs.
Successfully implement development processes, coding best practices, and code reviews.
Operate in various development environments (Agile, Waterfall, etc.) while collaborating with key stakeholders.
Resolve complex technical issues as necessary.
Train entry-level software engineers as directed by department management, ensuring they are knowledgeable in critical aspects of their roles.
Keep abreast of new technology developments.
Design and work with complex data models.
Mentor less-senior software developers on development methodologies and optimization techniques.
All other duties as assigned.
Requirements:
Bachelor s degree in a field that requires analytical and logical skills (e.g., software engineering / computer science), OR equivalent experience.