The Senior Software Developer supports and may lead the technical designing, developing, implementing and governance of technology solutions that deliver business value across the organization while continuously improving time to market. The Software Developer is responsible for analyzing, designing, building, testing, debugging, documenting, implementing and maintaining new or existing applications and software on distributed and/or mainframe systems. They review and analyze user needs and design proposed system solutions based on requirements. They participate in the development and testing of these solutions and ensure adherence to defined timelines. They evaluate and configure systems and peripherals for performance and serviceability, reliability, and availability. They recommend enhancements, upgrades and/or changes to the system configuration to maintain optimum system performance and utility. The Software Developer documents all aspects of an application or system to include network diagrams/flowcharts, layouts, diagrams, charts, code comments, and revision dates. They collaborate with other IT and business professionals and deliver high quality results. Job DescriptionJob Duties and Responsibilities: - Works on most phases of application development independently, but may occasionally require instruction and guidance of a more senior team member or manager
- Provides thought leadership on small to medium sized efforts
- Sets objectives and responsibilities on an organization effort
- Successfully deliver the right resources on initiatives in a timely and effective manner
- Mitigates risk within assigned assets, technologies and platforms
- Ensures data quality
- Coordinates with vendor technical staff on implementing system upgrades, enhancements and issue resolution
- Recommends opportunities to drive improvements
- Develops and maintains program documentation
- Leads the analysis and design for current business solutions, accounting for future business needs
- Understands the business needs and translates into technical plans and processes within an area
- Acts as the technical point of contact for the assigned technology solutions
- Brings broader coding experience (ex. secure coding techniques, understands which integration pattern to utilize)
- Develops and maintains functionality used by software applications, including change management, security and authentication, disaster recovery planning, support for data access, system configurations and reports
- Make and keep commitments to achieve desired priorities
- Provides feedback to team members against defined technical standards
Scope In Terms of Financial Indicators: - Demonstrates expertise of assigned assets, technologies and platforms
- Specializes on individual application components or subsystems within the scope of larger systems
- Oversees the development life cycle in build and implementation phases
- Participates in requirements, analysis and design phases
? Decision Making/Impact?: - Makes proactive decisions that translate direction into specific actions
- Responsibility to set expectations and work with necessary stakeholders to identify acceptable business solutions
- Ensures complex issues are escalated to leadership
- Provides recommendation on less complex issues to leadership
- Anticipates issues and takes action, as needed
Required Job Qualifications: - Bachelor's degree or equivalent experience in Computer Science, MIS, mathematics, or related field
- 3+ years of applicable experience
- In-depth knowledge of systems design and demonstrated leadership on small to mid-scale efforts
- Strong organizational, analytical and critical thinking skills
Other Critical Factors?: Skills: - Business acumen expertise of functional area
- Learning agility and curiosity to learn
- Critical thinking
- Innovative mindset
- Focus on continuous improvement
- Understand existing and emerging technologies
- Solid understanding of system and technology integration
- Understand industry technology standards, procedures and policies
- Solid understanding of and experience with development methodologies including Agile and Waterfall
- Adaptability and flexibility open to new ideas
- Analytical thinking
- Collaboration
- Think creatively and provide solutions
- Entrepreneurial leadership and thinking
Required: Object Oriented Programming Java Spring and Spring Boot SQL REST Web Services Preferred: GIAS Maven SOAP and REST Web Services JSON XML Rabbit MQ MongoDB Docker or Openshift |