Description
The Software Engineer IV will be responsible to lead the creation, implementation, and support of existing and next-generation software solutions. Accountable for providing technical vision, solutions, and exemplary implementation execution for the product. The ideal candidate possesses a solid understanding of development, testing, and integration methodologies for enterprise technology. Knowledge of current and emerging IT products, services, and processes, products used in cloud, local, networked, or Internet-related computer programs is a must. Your influence will drive engineering efficiency in an Agile Scrum software development model.
Essential Duties
- Gathers and writes technical requirements for complex stories, features, and epics. Authors technical designs.
- Codes web applications across domains following specifications and using the appropriate tools. Identifies best practices and guides other team members in the implementation of best practices.
- Developing application programming interfaces (APIs) to support mobile functionality
- Keeping up to date with the terminology, concepts and best practices for coding mobile applications
- Working closely with offshore and onsite teams to constantly innovate application functionality and design
- Generates supporting unit test as well as system test specifications and implementations. Builds the automated test framework, drives best practices, and troubleshoots issues.
- Maintains, modifies, and improves existing applications.
- Recognizes when a broad solution is needed based on trends/root causes and recommends solutions.
- Contributes to and may lead project document reviews, and design/code reviews.
- Ensures adherence to IT Control Policies throughout design, development and testing.
- Proactively works with cross-functional teams. Builds and maintains good business relationships that help drive ideas and solutions.
- Proactively engages team to review ideas, solutions, issues, and/or concerns.
- Applies AGILE concepts and works collaboratively and closely with QA in an Agile/Scrum environment.
- Trains and mentors new/junior teammates and coordinate the activities of the offshore team.
Other Duties & Responsibilities
- Support the entire application lifecycle (concept, design, test, release and support)
- Produce fully functional mobile applications writing clean code
- Gather specific requirements and suggest solutions
- Write unit and UI tests to identify malfunctions
- Troubleshoot and debug to optimize performance
- Design interfaces to improve user experience
- Liaise with Product development team to plan new features
- Ensure new and legacy applications meet quality standards
- Research and suggest new mobile products, applications and protocols
- Stay up-to-date with new technology trends
Competencies:
- Proficiency in developing software in a cloud-native environment
- Proficiency in Microservices and experience with moving monolithic application to Micro services
- Ability to do R&D work using new technologies
- Proficient with multiple technologies and have understanding of architectural principles.
- Drive to keep up to date with developments and trends in the tech and modern media world
- The ability to learn quickly, interpret and follow technical plans, Problem-solving, Strong communication skills and strong organizational skills
- Identifies, implements, and applies best practices. Is the “go to” person on the team.
- Defines how the work should be done; provides intelligent alternatives to the status quo. Sells and drives ideas. Owns issues and can work effectively inside and outside of the team to influence and drive results.
- Ability to handle multiple projects and possesses a proven track record of high quality deliverables.
- Ability to effectively communicate technical concepts to technical staff and can work effectively with cross-functional departments with varying degrees of technical experience.
- Understands and is able to explain up and downstream impacts across products, teams, and the organization.
- Constructively challenges the status quo; develops, proposes, and supports the implementation of innovative and creative solutions. Iterates and improves across multiple business domains.
- Displays flexibility in adapting to changing conditions and helps lead others through change.
- Leads by example, promotes a common purpose, and is a catalyst for success.
- Thinks strategically, displays a high degree of emotional maturity, and demonstrates a positive outlook.
- Strong team player, makes a valuable contribution to team objectives, displays trust and mutual understanding, accepts constructive feedback, and handles confrontation constructively.
- Possesses a broad understanding of Agile/LEAN principles and the ability to apply the AGILE methodology; competent AGILE team member
Required Qualifications and Skills:
- Requires a minimum of 8 years of experience in software development
- 10’ years’ experience with ‘8’ technology (J2EE, Spring, Hibernate, Tomcat, etc.).
- Experienced in Mobile application development in both native and hybrid mobile technologies (especially with Ionic framework)
- BS Degree in Computer Science or other Engineering degree
- Post-graduate degree preferred.
- Demonstrable portfolio of released applications on the App store or the Android market
- Experience with third-party libraries and APIs
- Familiarity with OOP design principles
- Excellent analytical skills with a good problem-solving attitude
- Ability to perform in a team environment
- Prior experience working in an AGILE/SCRUM environment.
- Must be able to work independently and as part of a team on multiple overlapping projects.
- Proven track record of successfully delivering large projects.
Preferred Qualifications and Skills:
- Proficiency in CI/CD software deployment
- Repositories: Postgres, MongoDB, Elastic Search
- J2EE: Spring, Hibernate, REST, SOA
- EAI: AMQ
- UI: AngularJS
- Native Framework: Android, iOS
- Hybrid Framework: Phonegap, Xamarine, Ionic – highly preferred
- Cloud: AWS, Azure