Senior Software Engineer
This company’s Software team already empowers 100s of millions of imaging devices around Earth. Still, they’re just getting started growing new user experiences with scaled mobile, desktop, cloud/web, and IoT software solutions in innovative ways. The solutions you will help them build will make printing products come alive for customers no matter where or how they are connected, what screen they look at, what app they love, or what OS platform they love it on. Our client’s software and services are no longer about drivers. They are about making best-in-class end-to-end experiences for people around the world we enjoy, our families enjoy, and our customers appreciate.
As part of the Platforms and Future Technology Software Group in Imaging and Printing, this Expert level developer position will be a leader voice within the Sprint team. You’ll work on current sprints but also be the person to investigate future opportunities, evaluate latest development tool options, help the team adapt processes, and improve their product quality.
Write awesome code. Help others write awesome code.
- Work closely with Product Owner to design use case solutions, tradeoffs, and options.
- Provide guidance and mentoring to less-experienced staff members to set an example of software applications design and development innovation and excellence.
- Design enhancements, updates, and programming changes of end-user mobile applications running on local, networked, and Internet-based platforms, specifically related to this company’s mobile and web-connected products.
- Push for TDD, help create testing plans, protocols, and documentation for assigned portion of application; identifies and debugs, and creates solutions for issues with code and integration into application architecture.
- Lead a project team of other software applications engineers and internal and outsourced development partners to develop reliable, cost effective and high quality solutions
- Collaborate and communicate with management, internal, and outsourced development partners regarding software applications design status, project progress, and issue resolution
Education and Experience
- Bachelor’s or Master’s degree in Computer Science, Software Engineering, Information Systems, or equivalent
- Minimum 7 years application development experience
Knowledge and Skills
- Experience working at the core of the mobile operating systems – iOS, Android, and Android variants.
- Excellent analytical and problem solving skills.
- Experience in overall architecture of software applications for products and solutions that stand the test of time and rapidly changing customer expectations.
- Evaluating and selecting forms and processes for software applications testing and methodology, including writing and execution of test plans, debugging, and testing scripts and tools
- Ability to lead teams of engineers towards a common goal or architecture – e.g., helping to code against the toughest problems, mentoring junior engineers, facilitating overall progress, etc.
- Excellent written and verbal communication skills; mastery in English and local language.
Would be great if you have:
- Significant experience and understanding of networking in the mobile context – PAN, LAN, and WAN discovery/communication, Wi-Fi, Wi-Fi Direct, Bluetooth, Bluetooth LE, Cellular, IPv6, emerging IoT protocols.
- Project history with Lean Innovation.
- Experience designing and working at the mobile device-printer communication level – e.g., firmware/software communication via REST/LEDM, IPP, various PDLs (e.g., PCLm), Scan languages (REST-Scan, eSCL, etc).
- Experience working effectively in both technical and business contexts with industry partners, consortiums, standards groups, and even competitors. Experience representing our client in these contexts.
- History of innovation with multiple patents or deployed solutions in the field of software design
- Ability to effectively communicate product architectures, design proposals and negotiate options at business unit and executive levels.
- Ability to integrate industry trends, software technology trends, and customer needs to facilitate and influence a technical roadmap that maps to broad business goals over a 1-3 year horizon.