What are the responsibilities and job description for the Senior iOS Developer position at Compunnel?
Job Summary :
As a part of Client, you’ll build industry-defining reusable customer and partner-facing services and products to lead differentiated experiences and revenue sources. You will be in the unique position to serve both our customers and our associates as a member of this organization, supporting all segments of Client. If you are the type of person who feels a personal stake in everything you work on, has a love for data, enjoys solving complex problems, has a passion for privacy, knows how to foster strong relationships and build trust, and work for the success of an entire team, then please read furth
Key Responsibilities :
• Build and maintain engaging and high-performant apps for our customers at a very high scale
• Produce robust, maintainable, highly tested, reusable code for developing functionality, configuration, improved performance, scalability, availability, security, monitoring, and alerting for software test, integration, and production environments
• Plan and implement a series of steps which potentially include reconfiguration, integration, removal, or addition of application components to enhance the application's functionality, resiliency, usability, and security
• Understand the Business / Stakeholder / Technical requirements and assist in analyzing the existing solutions to address the needs
• Assist in creation of simple, modular, extensible functional design for the product / solution in adherence to the requirements
• Assess gaps, updates, and modifications between the customer, business expectations, and the existing product / solutions
• Analyze defects from past projects and solutions to avoid recurrence of similar defects
• Analyze system performance impacting the complete product for non-functional requirements such as reliability, operability, performance efficiency, and security
• Troubleshoot performance and availability bottlenecks within the application
• Develop, maintain, and enhance automated test cases and deployment procedures
• Contribute towards continuous improvement of processes and solutions
Required Qualifications :
• Solid and varied understanding of iOS framework components and their respective lifecycles, combined with a strong grasp of software engineering fundamentals, including application lifecycles, run loops, memory management, multithreading, networking, remote and local storage, security best practices, performance tuning, and more
• Expert understanding of UIKit and its many quirks; SwiftUI is a plus
• Experience building Frameworks or SDKs
• Experience working with GraphQL / Apollo
• Experience in developing content-rich applications which include custom interactions, animations, and transitions
• Skill in developing clean and reliable App and Systems architectures
• Ability to build product requirements with a focus on testability, software quality, and overall engineering / operational excellence
• Experience with code repositories and version control practices
• Experience with CI / CD pipelines and best practices; automated deployment and general scripting experience is a plus
• Excellent communication skills, able to articulate complex ideas or opinions without hesitation and navigate multi-team interactions with diplomacy
• Experience in agile development methodology
Preferred Qualifications :
• Migrated at least 2 to 3 large-scale projects from older TypeScript to the latest TypeScript and NodeJS framework
• Experience with orchestrating Point of Sale devices such as payment terminals (pin pads) or barcode scanners, or other types of peripheral devices
Primary Skills :
• 5 years of large-scale project experience using TypeScript, JavaScript, Redux, React, Java, Jest, GIT, VS Code, messaging framework
• 5 years designing applications and practicing SOLID principles in each development
• 5 years deploying TDD on large-scale software
• 5 years developing contract-first development
• 5 years monitoring and addressing production issues at scale
• 3 years developing dashboards and data analysis using Splunk, Grafana, and BIG query
• Ability to create automated unit and integration testing
Education : Bachelors Degree