Senior Software Engineer - Mobile (End-User Experiences)

San Francisco

About The Role

As a Senior Engineer, you are a technical leader in your team. You can independently scope technical solutions and drive a project from beginning to end. You build distributed, high volume systems and are able to exhibit good anticipation skills and design skills. Services and features you work on that can easily be modified and expanded to adapt to new usage patterns and customer needs.

You are also expected to be collaborative and have good communication skills. You work well with members in the pod and outside, are able to have productive discussions with a wide audience, and are a trusted voice of the pod. 

You improve the team and the company. You improve the quality of the code in your pod, contribute to finding and solving problems in your team and supporting broader initiatives.

You are a good mentor and can mentor other junior team members to be successful team mates, both technically and culturally.


About The Team


As an engineer on the End-User Experiences pod at Leanplum, you’ll have the opportunity to redefine what’s possible in relationship marketing. The mission of the End-User Experiences team (known internally as E2) is to enable marketers to effectively reach and engage their end-users at every touchpoint. We own everything from the message composition experience on the Leanplum dashboard to ensuring users are receiving the hundreds of millions of messages Leanplum sends to users everyday, across all platforms and devices. This includes building the open-sourced SDKs that are now installed on billions of devices, on platforms like Android, iOS, Unity and Web. Our products are some of the most visible and customer-facing of all teams in the company.

Under the hood, E2 owns all of the backend services capable of sending tens of millions of messages in minutes. We also own core pieces of the front end dashboard product, where customers compose their Leanplum campaigns. Our SDKs are written in Objective C, Swift, Java and JavaScript. Our highly scalable backends are writing in Java.

Responsibilities

  • Being part of specification/design phase
  • Knowledge sharing/documentation for your responsibilities
  • Developing new features by writing high quality and maintainable code
  • Maintaining existing features by fixing bugs or refactoring existing code
  • Writing automated tests, such as unit, functional, integration tests
  • Writing, reviewing and maintaining detailed design docs
  • Monitoring the functionality, availability of systems and features
  • Releasing new versions of systems that you own as a tech lead

Requirements

  • BS/MS degree in Computer Science, Engineering or equivalent experience
  • 5+ years of software development experience, with extensive experience in Mobile (Android/iOS/Unity)
  • Experience with third-party libraries and APIs
  • Experience with testing (unit testing concepts and frameworks)
  • Experience working with mobile SDKs a huge plus.
  • Experience and skills to choose the right technologies and frameworks based on complex business and tech requirements
  • Ability to mentor and collaborate with engineers across the organization.

Benefits

  • Competitive salaries
  • Health, vision, and dental insurance
  • Flexible vacation
  • Peer bonuses
  • Delicious lunch catered daily
  • Happy hours every Friday!
  • Ping pong, darts, and foosball
  • Puppies galore

Ready to join Leanplum?

Sales
Amsterdam

Sales Engineer - Amsterdam

Sales - Amsterdam

Operations
San Francisco

Office Administrator

Operations - San Francisco