Software Engineer (iOS)

  • Full-time

Company Description

Are you looking to find an opportunity to work in a fast-paced growth environment? Does working with new technology excite you? If your answer is yes to these questions, then Portonics is the right place for you!

Who we are

Portonics is a global organization working in the US, Europe, Emerging Asia such as Thailand, Bangladesh, Myanmar, and other countries. We are an agile team who are very passionate about what we build.

We build digital products and solutions which enable brands across the region to make new kinds of interactions with their customers possible. Portonics works very closely with leading global corporations and companies in the telecom, payments, e-commerce, and financial sectors.

Our mission is to create digital transformation across the world with technological innovations.

We focus on flat culture to encourage people’s passions in the fields they love to work in. Everybody gets a chance to work on the parts of product development they are passionate about. Our teams are highly capable and make teamwork a breeze.

We design to reduce/automate processes to make products better! We leverage open-source technologies and extend them to create amazing solutions. As a digital transformation team, we are big on Dev, DevOps culture, and collaboration.

Job Description

ABOUT THIS POSITION

We are searching for a brilliant iOS Developer to create novel apps that meet the needs of our clients and end-users. To this end, the iOS Developer's responsibilities include writing and proofreading code, liaising with team members within and outside of their department, and monitoring client feedback. Over time, you will also be required to create app updates.

To ensure success as an iOS Developer, you should demonstrate proficiency in one of the mainstream programming languages and a sound understanding of the traditional product life cycle. An exceptional iOS Developer will be fearless but respectful in the pursuit of excellence, continually striving to shape the ways in which iOS apps impact the world around us.

If you have the ability to learn and adapt to new technologies quickly, then the below applies to you:

  • Design and build advanced applications for the iOS platforms. 

  • Collaborate with cross-functional teams to define, design, and ship new features.

  • Unit-test code for robustness, including edge cases, usability, and general reliability.

  • Work on improving application performance.

  • Continuously discover, evaluate, and implement new technologies to maximize development efficiency.

  • Track potentially disruptive technologies related to mobile development and lead the strategic response.

  • Advanced Applications include triggering Device APIs such as Core Location, Contacts, AVFoundation and more.

  • Participate in end-to-end product life cycle: confirming requirements, solution design, development, testing, and implementation.

  • Work with team members to design solutions supported by the existing systems' architecture.

  • Conduct code reviews.

  • Design architecture for projects or solutions that address business/ application/ information/ infrastructure application, data, and/or process integration requirements.

  • Resolve complex technical issues and drive innovation.

Qualifications

Bachelor's Degree in Computer Science or related field, with 3+ years industry experience including iOS development, team management, or equivalent combination of education, training, and experience.

Must have:

  • Experience on the entire app life-cycle: concept, design, build, deploy, test, and release to the app store.

  • Strong experience in SwiftUI.

  • Knowledge to ensure the performance, quality, and responsiveness of applications.

  • Understanding of Apple's design principles and interface guidelines.

  • An eye for good UI/UX design.

  • Experience in designing and maintaining Reusable, Testable, and Efficient code.

  • Strong experience and knowledge of Design and Architectural patterns, and knows when to apply them.

  • Proficiency in MVVM-C, Combine, and Reactive Programming.

  • Strong problem-solving and debugging skills.

  • Experience with dependency managers such as CocoaPods and Package Dependency.

  • Familiarity with RESTful APIs to connect applications to back-end services.

  • Work experience using Bitbucket, GitHub, or similar version control tools and services.

  • Familiarity with 3rd Party Libraries like Alamofire, Firebase, etc.

 

Good to have:

  • Ability to use the Android Studio / VS Code, including the Android SDK, and Emulators with ease.

  • Understanding of OOP, state management, Flutter flavors, and app architecture.

  • Knowledge to use CI/CD tools and services such as Xcode Cloud, Jenkins, etc.

  • Cross-platform development experience.

Additional Information

Things to consider

  • This is a full-time position

  • We're a global team working in different countries. Language Proficiency in Bangla & English is required.

  • The position is going to be hybrid.

  • Must be based in Dhaka, Bangladesh.

  • You will get the opportunity to work on some of the largest and highest-traffic applications and software services.

Our Pillars

  • We never compromise with ethics.

  • We like working hard but also want to have fun while working; If you are not having fun we reassess our approach to the solution through communication and improvement plans continuously.

  • Everyone has unique talents, skills, and experiences. We work with people we can learn from and also contribute to.

About Portonics

  • Founded in 2010, currently 100+ people

  • Offices in Bangkok, Bangladesh, US.

  • Pioneering Financial Inclusion with Payment Gateway and other services.

  • We manage products that have over 40M+ users.

  • We embrace cultural diversity and an open and inclusive work environment. Our teams are from diverse backgrounds and nationalities.

Additional information:

  • Communication skills are very important for this role; our engineers work across every team in the organization. Candidates need to be able to communicate not only with other developers but also with management, non-tech team members & external parties.

  • Someone who will take ownership of a feature or application from initial conception through release while also assisting others when the need arises.

  • Have an understanding of virtualization and containerization as a tool for growing scalability, reliability, and expediency.

  • Ability to learn and teach new technologies and skills as new technology is introduced.

  • Sound mature judgment and decision-making ability.

  • Strong analytical and problem-solving skills.

  • We are looking for honest, dedicated, and responsible individuals.