Work in Washington Veterans Jobs

Job Information

SMART Technologies (Seattle), Inc. Principal Software Engineer, Mobile Development in Seattle, Washington

Responsibilities: Act as technology leader for SMART mobile enablement across all SMART software products. The primary responsibilities of the position are as follows:Work closely with our Seattle-based mobile-focused Product Management, TPM, UX, and FM (face-to-face where possible) to:Understand and monitor the breadth of mobile product opportunities.Ensure that our architecture roadmap supports long term business plans and is responsive to customer feedback.Assist in selecting resources to staff mobile project teams and help attract talent in the competitive Seattle marketplace.Research latest trends, technologies and products in the mobile and collaboration spaces and report on capabilities and possibilities for SMART.Work with development teams:Lead senior and principal engineers in designing mobile-related architectures that balance short, medium and long term goals for all appropriate SMART products.Devise, refine, and document the protocols used for mobile enablement and collaboration (and the reasoning behind them).Distill a replicable design pattern which can be used by development teams to enable their products for mobile and collaboration.Recommend the technical areas and responsibilities of the various development teams as additional products are mobile-enabled.Define, evaluate and monitor the integration points between development teams.Monitor technical agreements and commitments with teams working on the products being enabled.Oversee development of embedded Notebook Player and web technologies to render and interact with Notebook content in browser, and oversee application of SMART proprietary technologies, including Kapp and kapp protocol, SMART Notebook file format and C++ implementation.Oversee incorporation of SMART legacy systems (SMART Sync and Bridgit), SMART LAB and LAB-C, and implementation of SMART proprietary Interactive Flat Panels (IFPs), iQ software, and Smart Learning Suite (SLS) service APIs.Act as a matchmaker for team members who have problems that are best solved by people outside of the team.Reports to the Development Manager.Minimum Requirements: Experience:.and.nbsp;.and.nbsp;5.and.nbsp;years of experience in any software development occupation with mobile-enabled products.Skills and Special Requirements:Objective-C, C++, C99, Swift, Java, and JavascriptDriven Development and Behaviour-Drive Development technologies: Xcode Test, Nimble/Quick, OCMock, XUnit, Mocha/Jasmine (RSpec), and SinonRealtime database technology: Firebase, and Relational database: SQLCore Software Development Kits (SDKs) of iOS, Android, and WindowsiOS development/debugging/profiling, supplemental developer tools: Xcode; Apple app store requirementsAndroid Studio for development/debugging/profiling, supplemental developer tools, Google app store requirementsWeb front end frameworks: React, Vue, and EmberManual memory management/RAIIBluetooth protocol: iOS and Android BT APIsUse and configuration of Amazon Web Services (AWS)Web technologies to render and interact with Notebook content in browser: SVG, XMLTechnologies to drive Lesson Document Collaboration project: JSON, Common Whiteboard stackAgile software developmentDesign of scalable systems: Service Oriented Architecture (SoA)Scalable network design: RESTImage processing: OpenGL, shadersApplication design for asynchronous work: ReactiveXMachine learning: Open CVUsability testing