Invitation Homes is seeking a FULL TIME Senior Software Engineer to join a small, energetic and collaborative team to help implement and expand upon our current product offerings to our residents, as well as our operations, marketing and leasing teams. A Senior Engineer may work under the direction of product managers and/or project managers to plan and estimate various software applications.
The ideal candidate has advanced knowledge to architect, develop, maintain and troubleshoot cloud-based web and mobile applications using the latest technologies and tools. This role will continually focus on learning, evaluating and using the ever-changing practices and tools of their craft to achieve corporate objectives and priorities. A Senior Engineer will provide feedback, guidance, and mentorship through pair programming, collaboration and effective communication to less senior staff.
Essential Job Duties and Responsibilities:
Design, develop and deploy backend services with focus on high availability, low latency and scalability.
Direct and assist with designing, developing, documenting, testing, and debugging new and existing software systems and/or applications.
Identify and resolve defects of complex scope using proper engineering tools and techniques such as debuggers, emulators, simulators, and logic analyzers.
Exhibit advanced technical problem solving and debugging skills.
Identify, develop, and advocate best practices, design standards and procedures.
Team player that is willing to do whatever it takes to help the team succeed.
Foster a collaborative and professional team environment to achieve objectives.
Mentor junior and mid-level engineers by providing advice, coaching and educational opportunities to grow their technical skills.
Design, develop and modify software systems, using scientific analysis and mathematical models to predict and measure outcome and consequences of design.
Provide support and maintain existing products and add new features as requested by customers.
Anticipate and adapt to a changing business environment and requirements.
Collaborate and communicate with Stakeholders, Product Owners, Quality Assurance and other teams in an agile work environment, including but not limited to design meetings, planning, stand ups, & retrospectives.
Perform other duties as assigned.
Education and/or Experience:
Must be a US citizen or green card holder to be considered.
Bachelor’s Degree in Computer Science or Computer Engineering from an accredited college or university or equivalent work experience.
At least five (5) years of equivalent work experience, 2 years as a Senior Engineer preferred.
Preferred Qualifications and Requirements:
Advanced knowledge of NodeJS and asynchronous programming.
Proficient knowledge in Linux/Unix systems, particularly on AWS.
Advanced knowledge of structured query language (SQL) and relational database concepts with preferred knowledge of PostgreSQL.
Proficient knowledge of the software development life cycle (SDLC).
Advanced knowledge of Heroku and Buddy.
Follows and advocates Agile practices and principles.
Advanced knowledge and understanding of system design, data structures and algorithms.
Advanced knowledge of contemporary web API design (REST, hypermedia, profiles, relations).
Ability to demonstrate knowledge, education, experience and/or training necessary to develop complex software in NodeJS, React or other programming languages.
Advanced knowledge of programming domains (server architecture, security standards, accessibility standards, database access and usage, deployment process, user interface development, networking, and so on).
Exceptional verbal, written, and interpersonal communication skills with the ability to articulate information in a meaningful way to project managers and executive level staff.
Exhibits leadership and mentoring.
Provide logical and meaningful contributions in discussions and meetings.
Familiarity with the Salesforce platform.
Proven ability to perform all aspects of application development including the coordination of others on small projects with minimal guidance or supervision.
Provide feedback and guidance in code reviews.
Must maintain professional appearance.
Ability to be at work on a regular and consistent basis.
Overtime may be required for this position.