We have several openings for Remote Xamarin Developers.
  • This is a remote position.
  • Occasional travel may be required.
  • The candidate must be based in North, Central, or South America for working hours convenience.
  • Must be able to work during business hours 9:00 AM – 6:00 PM, US Central Time.

Requires Skills and Experience

  • 5+ years of experience with C# and .NET.
  • 2+ years of experience with Xamarin Forms Platform.
  • Experience working with Git.
  • Ability to decompose complex UIs into XAML layouts.
  • An advanced level of English and effective communication skills both oral and written.

Key Responsibilities:

  • Design, build and maintain efficient, reusable, and reliable code
  • Ensure the best possible performance, quality, and responsiveness of the applications
  • Identify bottlenecks and bugs, and devise solutions to these problems
  • Help maintain code quality, organization, and automatization.

General Responsibilities:

  • Learn, adhere to, and enforce Client’s standards & best practices.
  • Deliver the highest quality designs & code for the project.
  • Participate in SAFe team ceremonies (daily stand-up, planning sessions, etc.).
  • Provide estimates for tasks.
  • Provide progress updates to team while working tasks.
  • Research and troubleshooting issues in QA and production.
  • Implement all ReSharper feedback that is “Warning” level and above. There are a few case-by-case exceptions to this; the client’s Architect will provide guidance.
  • Adhere to SOLID principles.
  • Adhere to Microsoft’s API Design Guidelines.
  • Adhere to the Command Query Separation principle.
  • Leverage the principles of Design by Contract (DbC).
  • Leverage the Clean Architectural style for layering, decomposition, and dependency validation.
  • Leverage Dependency Injection to decouple components.
  • Leverage Domain Driven Design principles and patterns where appropriate.
  • Provide complete software comments for public interfaces, classes, structs, enums, and methods including abstraction descriptions, exceptions thrown, and verbiage augmenting codified DbC specifications.
  • Eliminate duplicate code.
  • Code/design should be decoupled/modular/composable to facilitate extraction of any potentially reusable code as a mature common component.
  • All forms of serialized data should be versioned to help ensure a smooth migration path as the software matures/evolves.
  • Classes should be organized within the project as vertical slices of functionality instead of horizontal abstraction types (i.e. PrecisionOrdering and PhysicalInventory instead of Views and ViewModels).
  • Good usage of reactive design.
  • Adhere to the Composed Method style of functional decomposition where possible.
  • Leverage reactive data streams to explicitly model changing data as first-class citizens.
  • Leverage Event Sourcing model to preserve separation between remotely-source data and device-sourced data throughout data synchronization.
  • Leverage State Machines to govern progression of subsystems/objects/workflows through allowed states via declared triggers.
  • Embrace Continuous Integration / Continuous Delivery using robust automated build pipelines that automatically execute static code analyzers, design analyzers, unit tests, and integration tests.

We have great benefits:

  • Flexible Hours
  • Flat organization
  • Work with talented, interesting people
  • Competitive Compensation
  • More benefits

How to Apply!

Please include all relevant information (CV, GitHub repo, blog, etc). To apply, please fill out the form. Incomplete submissions will be declined.
APPLY FOR THIS POSITION

Other Positions