Senior Software Engineer
Job Type: Full-time, direct-hire
Location: Glendale, AZ
Remote options: Onsite 3 days per week and remote 2 days per week (after 6 months)
Salary Hiring Range: $97,900 - $137,000 Annually
Work Authorization: No C2C or recruiters. Must be a US citizen or have a permanent green card/resident card.
Benefits:
- Medical (EPO, PPO, or High Deductible Health Plan/HDHP with HSA-Health Savings Account)
- Dental Basic (Basic or High with orthodontic coverage for adults and children)
- UHC Vision plan
- Medical/Dependent Flexible Spending Accounts (FSA)
- Basic Life Insurance 1X salary plus option for supplemental insurance
- Arizona State Retirement System (ASRS) plan with employer contribution
- 12 paid holidays
- Vacation and sick-time accrual
Job Summary
Responsible for analyzing customer needs and designing, developing, testing, installing, and integrating software systems to meet business needs. Configures and customizes both on-premise and SaaS applications. Recommends software upgrades to existing systems and presents newly available options that may better meet the needs of the organization. Responsible for monitoring the effectiveness of systems and troubleshooting any issues that surface requiring advanced technical skills to resolve. May lead, coordinate, advise, and direct other Software Engineers and Systems Analysts in routine system support analysis, development, and design.
Essential Functions
- Works in conjunction with Information Technology Manager(s) to devise strategic and tactical solutions required to meet overall business objectives.
- Recommends technology solutions considering a number of factors including budget, business need, internal capabilities, and strategic direction.
- Writes high-quality code that satisfies customer needs.
- Creates systems by designing, developing, and installing software solutions.
- Maintains and improves existing codebases and peer review code changes.
- Applies Agile Methodologies to application development.
- Follows full Software Development Life Cycle (SDLC).
- Creates fault-tolerant programming and thorough Quality Control processes.
- Writes test scripts for both existing and developed code to ensure compatibility and stability.
- Integrates multiple systems utilizing different communication protocols and gateways. Develops or consumes APIs as necessary.
- Deploys and manages systems in both on premise and cloud hosted environments.
- Enhances applications by identifying opportunities for improvement, making recommendations, designing, developing, and implementing systems.
- Prepares and installs solutions by determining and designing system specifications, standards, and programming.
- Plans and implements systems automation as required for better efficiency.
- Evaluates systems and provides technical direction.
- Collaborates with other professionals to ensure high quality deliverables within organization guidelines, policies, and procedures.
- Develops and maintains documentation for supported applications, processes, and developed code.
- Complies with project plans and industry standards.
- Participates in change control process. Completes change requests. Coordinates work with all departments.
- Provides on-call support during non-business hours.
- Performs other related duties as assigned.
Minimum Qualifications/Special Requirements/Success Factors
- Bachelor's Degree in Computer Science, Management Information Systems, Computer Engineering or a related field
- 6+ years of experience in development, design, implementation, and application support
- 5+ years of software development experience and proficiency in .NET Framework and C#
- Strong API consumption experience
- Strong DevOps and CI/CD experience
- Relational Databases and SQL
- Experience in financial systems
Any equivalent combination of education, training and experience that provides the required knowledge, skills and abilities is qualifying. One year of relevant experience may be substituted for each year of required education.
Knowledge of:
- Software Development Life Cycle (SDLC)
- Agile methodology
- Industry best practices and emerging technology trends
- Algorithms and data structures
Skill in:
- Designing interactive applications
- Implementing, maintaining, and supporting third-party systems
Ability to:
- Work independently managing multiple assigned priorities and tasks, maintaining project schedules and deliverables
- Work effectively with users, technical personnel, and consultants to achieve stated objectives
- Visualize processes and outcomes through analysis and reasoning
- Troubleshoot software issues and debug a large codebase
- Document requirements and specifications
- Maintain skills through education
- Conduct research, evaluate user needs and system capability, and design appropriate plans and programs
- Communicate effectively both verbally and in writing
Additional Skills Preferred:
- Experience in Informatica a plus
- Python/JavaScript
- Experienced in cloud application development platforms such as AWS, Azure, Salesforce, Oracle, Dockers, etc.