Software Engineer 3 - Web & Mobile

Choice Hotels - Phoenix, AZ (30+ days ago)3.8


DESCRIPTION
I. SUMMARY STATEMENT Choice Hotels leverages cutting edge technology to welcome every guest, every partner, everywhere their journey takes them. We use technology to streamline the interaction with our guests, partners, and franchises. Software Engineering is a critical element in achieving greater efficiency, scale, and innovation of Choice Hotels’ business application portfolio — now and into the future. We are looking for talented and driven individual for our Software Engineer III role. You will have the opportunity to solve creative challenges and will work on cutting-edge technologies and products. You will have significant impact on our software enhancements & deployments, production process automation & monitoring. You will be working on ensuring high availability, security and reliability of our systems deployed in local data center & cloud. You will play key role in building our next-generation CRS platform ensuring Choice’s success. II. ORGANIZATION Reports to Manager, Application Owner, Resiliency. III. PRIMARY DUTIES AND ACCOUNTABILITIES Design, write, and maintain software to improve the Security, availability, scalability, latency, and efficiency of applications/services, incorporating cloud and open source tools when available and writing software of your own when nothing else fits the bill. Engage in service capacity planning and demand forecasting, anticipating performance bottlenecks and provisioning new hardware as necessary. Participate in software performance analysis and system tuning. Monitoring and alerting for various components across our infrastructure Participate in rotating on-call duties. Quality Assurance (QA) Testing: Assists software engineering teams during the quality assurance phase of the development cycle. Production Release: Serves as a supervisor before, during and after the systems Production rollout. Utilities: Actively involved in the selection and/or creation of tools for design, modeling, programming, debugging, testing, diagnostics, monitoring, profiling, operations, logging, reporting, security checking, or analysis. Management: Participates in third-party system analysis to identify potential implementations and integrations. Education: Keeps up on industry trends and current technological standards, languages, coding techniques, utilities and operational considerations. IV. ROLE, REQUIRED EDUCATION, EXPERIENCE, KNOWLEDGE AND SKILLS Role The Go-to expert in one area of the codebase; understands the broad architecture of the entire system. Thinks at the enterprise level for reliability, scalability, maintainability, extensibility, portability, and security. Provides technical advice and weighs in on technical decisions that impact other teams or the company at large. Researches and proposes new technologies. Scopes and stages work into well-defined milestones to avoid a monolithic deliverable. Regularly delivers software on-time and is constantly working to make accurate estimates and deliver on those estimates. Owns the technical testing and performance plan for their projects. Takes initiative to identify and solve important problems, coordinating with others on cross-cutting technical issues Sets direction at the project/service level and consistently influences decision-making at the top level of team Identifies and proactively tackles technical debt before it grows into debt that requires significant up-front work to resolve Able to provide feedback on projects outside of their core area Identifies and proposes strategies around technical problems affecting their team, communicates standards and gets buy-in on solutions Makes others better through code pull reviews, thorough documentation, technical guidance, and mentoring or serving as a Tech Lead on a project. Understands the tradeoffs between technical, analytical and product needs and leads to solutions that take all of these needs into account Develop procedures/processes to automate security tasks as part of deployment pipeline. Develop & maintain up to date documentation for all security requirements/procedures & tools. Develop and deploy automated solutions to secure cloud development processes. Identify & communicate security risks & implement solutions to remediate the issues. Assist & train team members in use of cloud security tools & remediation of issues. Work with application & Infosec teams to design/architect infrastructure to protect against attackers Able to enjoy and have fun in an exciting technology driven software development & support culture!! Education, Experience and Knowledge Bachelor’s Degree in Computer Science, or related field, from a four-year college or university, or one to two years related experience and/or training; or equivalent combination of education and experience. Relevant industry certification, such as Oracle Java Developer, is preferred. A minimum of 8 years relevant experience in software development, information systems, or equivalent technical environment, including previous experience in the development of highly transactional, mission critical applications in heterogeneous environments/architectures for multi-user systems. Expert in all aspects of the software development lifecycle: design, functional and technical requirements, coding, debugging, testing, release, and operational support. Expert level knowledge of agile software development methodologies, Service Oriented Architecture and object-oriented programming methodologies. Expert in software development best practices, including coding standards, code reviews, source control management, build processes, testing, and operations. Expert level knowledge of relational database management system technologies and tools. Skills (with Web and Java Specialization) Expert level proficiency with the following technologies: Java (7+ years) AngularJS/React, JavaScript, HTML, CSS, XML, XSL Spring MVC, Spring Boot, JMS Web service protocols, such as SOAP or REST RDBMS, SQL, NoSQL Application Security Cloud /AWS WAF Knowledge of network, routing and web related protocols (e.g. TCP/IP, UDP, HTTP, HTTPS) Experienced in secure coding practices Have clear understanding of encryption/decryption methods, authentication and common IP/application attacks. Good understanding of information security principles and best practices. Experienced in identifying and resolving security issues such as SQLi, XSS, CSRF, and business logic flaws across large code bases Unix/Linux Subversion and/or GIT Other Preferred Experience Web analytics tools (Omniture, App Dynamics, Google Analytics) Familiarity with build and CI tools such as Maven, Gradle, Jenkins and Sonar Knowledge of Akamai CDN and Bot Manager Exceptional analytical skills. Exceptional verbal, written and listening communication skills. Strong interpersonal, analytical, problem-solving, influencing, prioritization and decision-making skills Strong leadership skills. Proficient in the use of MS Office applications, such as Outlook, Word, PowerPoint and Excel Experience in Scrum Agile methodology Must be able to uphold Choice's Values & Performance Principles of accountability, collaboration, performance excellence, sense of urgency, innovation, inclusion & diversity, integrity & trust, customer focus, and respect.