Call ConicApps for answers to your Mobile App and Web App questions: +1(785) 833-2476 8AM-5PM CT

Xamarin Developer

Salina, KS
Engineering
Contractor

We have been retained by a client to deliver two (2) Senior Software Engineers to work 100% remote on a long-term, 2-4+ year contract basis as part of a large software engineering team creating a complex, cutting-edge, Xamarin.Forms application. You will enjoy working with SAFe Agile methodologies, scrum, TDD, and the scaled agile framework, while working as a team, and independently solving the complex software problems associated the long list of complex features of this mobile app used by this large corporation. You will enjoy the OOP, OOD, C# capabilities and the personalities of this articulate, well-spoken and strong C# .NET software engineering team you will join, and communicate with during your weekday agile/scrum meetings.

Here is what you will be given and the tech stack and methodologies you will use:

A high performance Mac with Windows VM, with a recent or newest version Visual Studio (eventually MAUI : Multi-Platform App UI), a Mac machine, C#, Xamarin . Forms, XAML, MVVM, SQLite, reactive programming principles vs. inheritance, Reactive eXtensions, ReactiveX, RX, Resharper, C#, NUNIT, TDD, Agile, Scrum, Azure DevOps, Xamarin Test Cloud, and Visual Studio App Center. This is a 40-hour work week. 100% remote USA.

  • Deliver code to implement the requirements, as defined for the sprint
  • Leverage Model View View Model (MVVM) and reactive principles (Reactive Extensions, ReactX) where appropriate
  • Work with Automated Test & UI developers to ensure high-quality, tested, working features
  • Use HTTP knowledge, Fiddler traces
  • Take UI & automated test tasks, as needed
  • Learn, adhere to, and enforce & best practices
  • Deliver the highest quality designs & code for the project
  • Participate in Agile, scaled agile framework (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 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
  • 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 Design by Contract specifications.
  • Eliminate duplicate code
  • Code and 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 and evolves.
  • Classes should be organized within the project as vertical slices of functionality instead horizontal abstraction types
  • Good usage of Reactive Extensions or use of programming principles design.
  • Adhere to the Composed Method style of functional decomposition where possible., or use of compositional models (composite models) versus inheritance.
  • Leverage reactive data streams to explicitly model changing data.
  • 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 Azure DevOps including robust automated continuous integration and continuous build pipelines that automatically execute static code analyzers, design analyzers, unit tests, and integration tests.

Requirements:

We prefer candidates with 4-5+ years software engineering with C#, Xamarin or Xamarin Forms experience, and a bachelor’s degree in computer science, or related. Candidates must reside in the USA.

Excellent verbal and written communication is required.

We prefer candidates with strengths in C# software engineering with mobile app experience, Xamarin, or Xamarin.Forms, and mobile app (iOS, Android, UWP), experience, a past history with the Windows Presentation Foundation ( WPF ) of classes, Reactive Extensions, ReactiveX, RX, Resharper, reactive programming principles, data streams, message streams, observables, and an basic understanding of the composite reuse principal (compositional models vs. inheritance), Agile, Scrum, TDD (test-driven development).

Employment Type: Contract (long term, 2-4+ years)

Hourly Rate: $55 – 75 per hour

Location:
100% remote, candidate must reside in the USA.

Immigration: US citizens and those authorized to work in the US are encouraged to apply. We are unable to sponsor H1b candidates currently.