Principal Software Engineer

Location

United States

Posted

5 days ago

Salary

$174.4K - $225.5K / year

Seniority

Lead

Job Description

Principal Software Engineer

Shutterfly Career Site

Role Description Design and develop software solutions by understanding the business requirements and investigating problem areas in Agile Scrum and Test-Driven Development (TDD) methodologies. - Deliver software solution that is testable, scalable and maintainable. - Provide technical leadership to the team in implementing the designs in test-driven development process with both unit and integration tests. - Implement continuous integrated build, deploy processes and dev-ops model with automated infrastructure and horizontal scaling. - Set the technical direction, the standards and share the best practices. - Work with QA and ensure QA coverage for regression and User Stories testing is acceptable and with high level of automation. - Facilitate design discussions and knowledge sharing across the team. - Help build the dev-ops culture in the organization by collaborating and working closely with operations group. - Support and help team investigate and resolve defects by providing advice, coaching and educational opportunities. Qualifications - Bachelor's degree or equivalent in Computer Science, Computer Engineering or a related field. - 7 years of progressive experience in lead or senior software engineering or development role. Requirements - Utilizing the following front-end platform tools, languages and technologies: Java; JavaScript; Backbone; JQuery; AJAX; REST; XML; JSON; HTML5; Fabric; ReactJS; Ruby/Rails; Chef; Splunk; git; tomcat; apache; Scrum; JIRA; and Mongo DB. - Evaluating technical services and their relationship within a broader architectural system to determine improvements and modifications. - Utilizing or working with the following software development methodologies: test-driven software development, refactoring practices, new and legacy code bases, and Agile methodologies. - Performing the following Dev-Ops activities: designing and configuring monitoring with actionable alerts; developing real-time application dashboards showing overall system health; developing and maintaining automated deployment capabilities for zero-downtime; and developing performance and capacity plans (operational capacity and load requirements). - Providing technical leadership to the team in implementing the designs in test-driven development process with both unit and integration tests. - Representing the team in architecture and solution design meetings as well as mentoring and coaching less experienced engineers on standards and best practices in software development and testing. - Setting the technical direction for a software development project, as well as estimating, planning, and monitoring the quality of the project. Benefits - 40 hours/week. - Salary: $174,423.00 to $225,500.00 per year. - This is a 100% telecommute position. Candidates must reside in a state in which Shutterfly is registered to do business. This includes all US states except District of Columbia, North Dakota, Mississippi, Rhode Island, Vermont, and Wyoming. - This position reports to Shutterfly, LLC located at San Jose, CA. How To Apply Individuals interested in applying for the position must email resumes to Shutterfly, LLC at [email protected] referencing Job Code #KG-0615.

Related Job Pages

More Software Engineer Jobs

Role Description - Develop and maintain the core game technology infrastructure that serves as the backend for our game worlds. - Architect systems that allow games, marketplaces, and user-generated content/platforms to communicate and interoperate seamlessly. - Work closely with game designers and other software engineers to ensure that our technology meets the needs of our games and players. - Continuously improve and optimize the performance, reliability, and scalability of our infrastructure. Qualifications - 5+ years of professional experience as a software engineer, with a focus on distributed systems or backend. - Strong understanding of distributed systems principles and algorithms. - Proficiency in Go with prior experience shipping production-grade code. - Experience with container orchestration software (Docker, Kubernetes, etc.). - Excellent problem-solving and communication skills. - Passion for games and game technology. Requirements - Experience with game technology infrastructure development and/or game engine development (nice to have). - Proficiency in Rust (nice to have). - Experience leading an engineering team (nice to have). - Experience with blockchain core protocol engineering (nice to have). - Experience with Cosmos SDK (nice to have).

Indonesia

Role Description You’ll lead the development of a new, Rust-like programming language intended to run in kernel-space. Expect to write and review design documents, implementation decisions, lots of code, machine-checked proofs, and LaTeX specifications. - Develop an existing compiler codebase and software to continuously test and verify its correctness - Formally verify language properties and implementations - Collaborate and co-design with OS and networking teams to tightly integrate the language into the overall product - Participate in both sides of code reviews - Actively anticipate and communicate future roadblocks - Participate in the open-sourcing of the language Qualifications - 3+ years of software engineering experience - Deep understanding of type systems and logic systems: formal specification, design, implementation, and trade-offs - Experience with formal programming language semantic specifications, proofs, and ability to translate them into code - Experience with formal verification including model checking, theorem provers and SMT-based approaches - Understanding of system-level language concerns such as binary formats, loading, ABIs, linking, and machine targets - Mastery of or ability to quickly master Rust - High level of independence and autonomy - Ability and willingness to document, teach, and explain complex technical problems and solutions Benefits - Compensation is comprised of a competitive market salary and stock grant (>= 0.4%) conditioned on a vesting schedule - Unlimited paid and unpaid vacation time - Reimbursable vacation expenses (transportation and lodging up to $1k) - A triennial $4k computing device allowance - Comprehensive medical, dental, and vision insurance - $120 monthly gym allowance - $250 yearly to spend on anything educational

United States
$175K - $250K / year
Full TimeRemoteTeam 201-500Since 2015H1B No Sponsor

• Administer, install, configure, upgrade, and maintain IBM z/OS mainframe environments, including CICS Transaction Server, IBM MQ, and related software products • Perform software installations, migrations, upgrades, patching, and implementation activities across multiple mainframe environments • Troubleshoot and resolve system abends, outages, and performance issues using logs, traces, dumps, and monitoring tools • Manage IBM MQ environments, including queue managers, queues, channels, backup processing, and web services administration • Monitor and tune system and middleware performance to ensure availability, reliability, and operational efficiency • Support secure and compliant system operations in accordance with cybersecurity and enterprise security requirements • Develop and execute implementation plans, test plans, recovery plans, and back-out procedures for software and hardware changes • Coordinate change management, incident management, CAB activities, and cross-functional implementation efforts using approved operational processes and tools • Create and maintain technical documentation, standard operating procedures, implementation guides, root cause analysis reports, and status updates • Utilize SMP/E, JCL, TSO/ISPF, REXX, CLIST, COBOL, and related IBM utilities to support administration, automation, and system operations • Support backup, recovery, and disaster recovery planning, testing, and execution • Provide technical guidance, mentoring, training, and customer support to project teams, junior staff, and stakeholders • Collaborate with infrastructure, cybersecurity, application, and operations teams to ensure stable and secure mainframe services

United States
Full TimeRemoteTeam 5,001-10,000Since 1995H1B No Sponsor

• Contribute to developing cloud security blueprints for the Google Cloud Platform that incorporate security best practices used by the world’s largest companies. • A blueprint is a package of deployable, reusable modules and policies that implements and documents a specific security solution. • Development work is conducted on open-source projects.

Brazil