Senior Software Developer I at SMS Assist
SMS Assist Summary
At SMS Assist, we’re not just in the business of fixing properties—we’re fixing an entire industry. Typically, facilities maintenance is tough work—both in the nature of the job (plumbing, HVAC, snow removal) and the lack of clarity throughout the experience. We decided a better way wasn’t only possible, but essential. Through our award-winning technology platform, built and powered by SMSers, we connect local contractors to our customers and help manage an experience that surpasses expectations.
Recognized on Forbes’ Cloud 100 list, Deloitte’s Technology Fast 500, Chicago Crain’s Top Tech Employers, and more, SMS Assist manages more than 186,000 properties where people live and work. Our customers’ livelihoods are in our hands—think a restaurant manager whose only fryer goes down on a busy Friday night or a family in Florida without power after a hurricane. We work across the industries that make up your community, including retail, food service, banking, residential, and more, and we help them find the right provider in our network (we call them Affiliates) in more than 45 trades.
We’re innovators, disruptors, and out-of-the-box thinkers. We set each other up for success in the office and for the perfect spike on the volleyball court during an intramural game. We’re community volunteers, karaoke partners, and lifelong friends. We’re passionate about the people we serve, and we give our all because we care. We want to make every property better, and we want your help to make it happen.
The Senior Software Developer supports the Product and Technology Department by managing day to day activities within the organization's software development function. Senior Software Developer is part of an agile development team building and working on enterprise grade software. Senior Software Developer is involved in all areas of development from design to development to testing. They lead a small team of Software Developers.
• Oversee the work of a team responsible for designing, building, testing, deploying, maintaining, and supporting applications or systems software.
• Work to establish functional requirements and reviews solutions to ensure organizational needs are met.
• Select and oversee implementation of one or more software development methodologies.
• Develop short- and long-term product roadmaps to ensure continuous improvement of software.
• Document and demonstrate solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear code.
• Prepare and install solutions by determining and designing system specifications, standards and programming
• Improve operations by conducting system analysis, recommending changes in policies and procedures
• Protect operations by keeping information confidential
• Mentor junior developers
• Keep up to date on the newest technological innovations in the field and be ready to apply relevant innovations.
• Optimize new and existing applications.
• Foster a positive team environment
• Ensure confidentiality of internal and external data
• Perform ad-hoc projects and other duties as assigned
• Verbal Communication – Advanced
• Written Communication – Advanced
• Teamwork – Advanced
• Relationships – Advanced
• Negotiation – Advanced
• Learning Agility – Advanced
• Problem Solving – Advanced
• Process Orientation – Advanced
• Prioritization – Advanced
People Management Skills
• Proficient in basic people management processes
• Proficient in leading a small team on a day to day basis, within a broader organization structure
Role Specific Skills
• Comprehensive understanding of object-oriented and service-oriented application development techniques and theories
• Solid understanding of relational database design and querying concepts
• Exposure to Microsoft .NET development using C#, or JAVA or other major languages
• Familiar with Design Pattern, algorithm
• Knowledge of client/server application development
• Knowledge of agile development methodologies
• Knowledge of unit testing theory
• Experienced with source control management systems and continuous integration/deployment environments
• Experienced with debugging, performance profiling and optimization
• Internally motivated, able to work proficiently both independently and in a team environment
• Strong communication skills with both internal team members and external business stakeholders
• Strong initiative to find ways to improve solutions, systems, and processes
- Bachelor's degree in Computer Science, or with equivalent professional experience
- Fluent in English and Mandarin preferred
- 5+ years of experience as a software developer
Please note, this job description is not designed to cover or contain a comprehensive listing of activities, duties or responsibilities that are required of the employee for this job. Duties, responsibilities and activities, and schedule may change at any time with or without notice.
SMS Assist is an Equal Opportunity Employer (EOE) that welcomes and encourages all applicants to apply regardless of age, race, color, religion, sex, sexual orientation, gender identify and/or expression, national origin, disability, veteran status, marital or parental status, ancestry, citizenship status, pregnancy or other reasons prohibited by law.