software engineer jobs



SALARY: $100k - $120k USD
LOCATION: Remote only, US based
 

Mailshake is seeking a highly motivated Software Engineer to help us implement new features and functionality for our simple yet powerful sales engagement software for sales professionals. You’ll work closely with other members of the Engineering team to continue building out our applications, services, APIs, and backend systems to provide our customers with a great user experience.

ABOUT MAILSHAKE


Mailshake is a profitable, bootstrapped, and fast-growing startup looking to expand our product offering with the feedback of thousands of happy customers. We believe in putting our customers first, tackling tough problems head on, and simply trusting our employees to get stuff done. We offer flexible schedules, paid maternity/paternity leave, and other perks that come with being a remote company.

ABOUT THE POSITION

The Software Engineer is responsible for writing code to implement new features for Mailshake’s applications and services. This is a remote-only position and thus requires the ability to get work done with minimal supervision, but at the same time communicate effectively with other members of the team on an as-needed basis. This role requires a steady pace of feature delivery while maintaining high quality code.

This role also requires working knowledge of the following technologies: Node, Angular, Typescript, and MySQL. Our platform runs on AWS and utilizes the following AWS technologies: Aurora RDS, ElastiCache/Redis, ECS and Fargate, SQS, Lambda, EC2, CloudFront, and CloudWatch. While not a strict requirement to have a working knowledge of all these AWS technologies, familiarity with cloud infrastructures, including serverless and container technologies, is a must.

CORE ACCOUNTABILITIES
  1. Feature development: Write code to implement features for Mailshake’s applications and services, including unit and integration tests, as well as writing any necessary documentation.
  2. Software maintenance: Maintain the Mailshake codebase by troubleshooting, debugging, and writing code to fix bugs, address security concerns, increase performance, and refactoring where appropriate to improve code flow, structure, and logic.
  3. Support and monitoring: Provide up-level support for customers and internal teams to ensure customer happiness and confidence. Monitor system alarms and notifications to proactively fix and address potential performance and reliability issues. 

KEY RESPONSIBILITIES
  • Implement application features in a consistent, timely manner.
  • Provide estimates for feature development work.
  • Provide up-level support for internal, customer-facing teams.
  • Work closely with the Product team to understand feature requirements and usability.
  • Work closely with the Engineering lead to understand priorities and schedules.
  • Monitor production applications, services, and databases for possible issues.
  • Enhance backend databases with schema changes and ETL processes.
  • Review pull requests from other members of the Engineering team.
  • Deploy code to production using our CI/CD pipeline.
  • Participate in UI/UX design reviews to give feedback to Product Designers.

REQUIREMENTS
  • 5+ years experience in a Software Engineer role.
  • Excellent verbal and written communication skills.
  • Experience working at a SaaS company.
  • Familiarity with developing applications to run in a cloud infrastructure.
  • Working knowledge of Node, Angular, Typescript, and MySQL.