Engineering Team Lead
RXMG is focused on optimizing marketing engagement while building a great business and culture. We are a remote business with staff based across the US. We challenge ourselves to be the best at what we do, including leveraging cutting-edge technology and data-driven strategies to solve complex problems at scale. Our challenges center around delivering the right message to the right consumer at the right time in the right channel – given the consumer profile and prior interactions across channels. We are lucky to have a fantastic team of people who are stronger together, exceptional at solving problems, and enjoy the benefits and work-life balance that we provide.
Benefits of working with us:
- Unlimited PTO: Many organizations try this, but we do it successfully.
- Paid Health Insurance, Dental, and Vision for you & your family: your family is our family.
- Fully remote-work: You don't have to come to an office! Our team works over Slack, Google Meet, and Zoom.
- 401K Plan: Matching 100% of the first 4%
- Company-provided hardware: We don’t want you to be held back by hardware - we provide the newest Apple hardware (MBP), extra monitors, and peripherals.
- Employee education programs: Do you want to continue to learn and grow? We will pay for your training, courses, materials, and certifications.
- Great Company Culture: Monthly Events (Poker, Guest Speakers, etc), Half Day Fridays (Summer time), and EOY “Quiet Time” (In December), 6 weeks paid parental leave.
What we expect out of every member of our software engineering team:
- The ability to create a plan of attack on how you're going to accomplish the code you write in the form of flow diagrams, database schema ERD, and supporting documentation before you follow through on execution, execution is everything.
- Eagerness to learn new technologies and excel at your technical core competencies.
- We adhere to a high standard of engineering. Your code must be PSR12 compliant, maintain a high level of PHPUnit coverage. If it doesn't, it doesn't even make it into the development branch!
- Be involved in our stand ups every morning, participate in team deep-dives that describe what we are making, join in on our Lunch & Learn to showcase a piece of technology you want us to adopt, and work with our project managers to stay on track and update our users!
- Be organized and be able to communicate your objectives to your peers.
- Positive and supportive team culture of diversity and growth.
- Ability to participate in our rotating on-call schedule for monitoring outages outside of business hours.
Main Responsibilities:
- Team performance: quarterly 360 peer reviews, mid-year, and yearly reviews are done for each engineer.
- Please contribute to our codebase as well as to be able to architect and delegate tasks.
- Build and manage the engineering onboarding process
- Manage and keep a formalized engineering onboarding process
- Develop finite artifacts that guide new engineers though the environment setup and knowledge base ramp up process.
- Mentorship & Career Growth
- Ensure individual growth for all team members by curating a reliable and consistent feedback loop between staff and management - focus on career management and development of direct reports.
- Be an effective mediator and resolve conflicts amongst the engineering team as well as cross team conflicts.
- Be organized and be able to communicate goal objectives to your peers.
- Enable the team with the context, vision, skills, and tools they need to succeed
- Build an agile team that ships often, iterates quickly and takes pride in the product they deliver.
- Create reports to provide visibility into overall team health.
- Participate in the hiring and interview process.
- Inclusive Team Culture
- Foster an inclusive culture and work environment, for the success of the team, ensure that all voices are heard within the team.
- Build a process for capturing engineering intellectual buy-in for the technical roadmap.
- Propose tools to foster a positive and supportive team culture of diversity and growth.
- Assisting engineers in RFC Proposals that introduce new standards and processes into the engineering flow.
- Overlook and ensure code review process is streamlined and optimized.
- Build tools and provide reports to upper management with metrics such as regressions and bugs per engineer.
- On-call responsibilities
- Manage and build a regular on-call rotation schedule across our team with engineers, taking part to resolve the inevitable issues that may arise from time to time.
- Ensure proper and prompt escalation of issues and ensure address promptly.
- Ensure that the team builds software that is performant, reliant and adheres to the client brief.
RX Marketing's Tech Stack:
- Code: PHP Laravel Framework 8+ and Vue/Nuxt
- Infrastructure and DevOps: Ubuntu Linux, Kubernetes, Docker, Terraform, AWS & Google Cloud, and Sentry.
- Databases: ElasticSearch, MongoDB, InfluxDB, Redis, and MySQL.
- Version Control: GitHub & Gitlab
- Project Tracking and Roadmaps: JIRA, Monday, and smart sheets. AGILE Scrum (eXtreme Programming).
Requirements:
- 5+ years of experience as an Engineering Team Lead.
- Additionally, at least 2 years of experience using Laravel Vue.
- Expert Working knowledge of:
- Architecture and Design Patterns
- Design Patterns such as and not limited to Event Driven Development, Macro/Micro Services, PubSub Services, Interprocess Communication, Message Queues, Service Patterns.
- Good understanding of application optimization at scale
- Laravel Queues
- Service Pattern
- APIs
- Laravel 8+
- Service Container / Service Provider
- Package Development
- Facades
- Events, Jobs, Middleware
- REST best practices.
- Git: Branching strategies, merge requests, conflict resolution, merge requests.
- Unit, Feature Testing, and Integration Tests. (php unit, parallel testing)
- Advanced Understanding of MySQL, and Redis.
- Moderate Understanding of Vue architecture and best practices
- Basic Understanding of data stores (Nuxt)
- Advanced understanding of API operations and JS promises
- Advanced understanding of stand alone components
- Basic understanding of Docker / Command Line.
- Basic understanding of modular development
Nice to haves:
- Experience or have an understanding of:
- Databases such as MongoDB, InfluxDB, ElasticSearch, Redis.
- Laravel Queues, Events/Listeners, Workers, and Caching, Facades, etc.
- Bootstrap, Tailwind, or other front-end UX/UI Frameworks.
- Diagram tools like Lucidcharts, Diagrams.net, or equivalent.
- Cypress, Cucumber or other frontend testing frameworks
- Experience with high performance applications.
- CI/CD application deployment in a cloud-based infrastructure such as GCP.
- Good understanding and comfortable using Linux/Unix command line.
About You:
- You have a keen eye to discover deep rooted issues and provide improved solutions to problems.
- Great communication skills.
- You enjoy mentoring your peers.
- Self-supervised.