Senior Software Engineer, Fullstack

Job Description

Role Overview:
DroneDeploy is seeking an innovative and experienced Senior Full Stack Software Engineer to join our dynamic team. In this role, you will lead the development of cutting-edge features that empower our customers to derive valuable insights from aerial and ground imagery. You will thrive in a fast-paced startup environment, leveraging your versatile full stack expertise across various technologies to drive innovation and deliver impactful solutions.
Join us at DroneDeploy and be a part of a team that values innovation, collaboration, and the drive to make a significant impact in the world of aerial and ground imagery solutions.

Work Environment
> Work Hours: Monday through Friday, full business days with flexible scheduling. Must be available during core team overlap hours from 8:00 AM to 2:00 PM PT, with occasional organizational meetings occurring between 2:00 PM and 4:00 PM PT. 
> Work Model: 100% remote (work from home).
> Work Travel: Available for occasional domestic for, training sessions and company events.



Responsibilities:
  • Lead Feature Development: Architect and implement product features that enable customers to extract actionable insights from diverse imagery sources.
  • Enhance Internal Tools: Drive the advancement of internal platforms to optimize support for engineering, sales, and customer service teams.
  • Project Ownership: Oversee projects from initial technical design through to final acceptance testing, ensuring high-quality deliverables.
  • Innovate Solutions: Apply extensive industry experience to solve complex, real-world challenges with creative and effective solutions.
  • Automate Processes: Develop tools to automate routine tasks, enhancing operational efficiency.
  • Collaborate Cross-Functionally: Work closely with peers, managers, and cross-functional teams to foster innovation and productivity.

  • Requirements:
  • Experience: Senior Full Stack Software Engineer with 5+ years of experience. The ideal candidate excels at rapidly prototyping and iterating on new technologies and product innovations, thrives in fast-paced, startup-like environments, and demonstrates adaptability along with a proven ability to deliver scalable, maintainable solutions.
  • Front and Backend Technologies: Proven experience in modern frameworks such as Angular or React and Typescript and Python for backend development.
  • API & Integration: Expertise in designing and implementing secure, scalable API architectures, including REST, GraphQL, and RPC, leveraging patterns such as microservices, serverless, event-driven, modular, and CQRS. Strong experience in integrating third-party services and handling both asynchronous and synchronous processing.
  • Event-Driven Architectures: Understanding of event-driven design patterns, enabling scalable and decoupled systems through message queues, event streaming, and real-time data pipelines.
  • Data & Storage: Proficiency in both relational (PostgreSQL) and NoSQL databases (MongoDB), with familiarity in data products supporting machine learning and advanced analytics.
  • DevOps & Cloud Services: Experience deployment, monitoring, and scaling of applications using Cloud Platforms and kubernetes and docker.. 
  • Testing & Reliability: Strong background in automated testing, including unit, integration, and end-to-end testing frameworks such as Jest, ensuring high software quality and maintainability.
  • Agile & Continuous Improvement: Experience working within agile development cycles, emphasizing rapid iteration, continuous deployment, and iterative learning in a fast-paced, startup-like environment.
  • Version Control & Collaboration: Proficient in Git and CI/CD workflows, ensuring streamlined development and deployment processes.

  • What to Expect After Joining:
  • Leadership Opportunities: Take charge of complex projects, guiding them from conception through deployment, and mentoring junior team members to foster their professional growth.
  • Strategic Impact: Engage in initiatives that directly influence our customers' experiences, with the authority to deploy code to production environments.
  • Professional Development: Access continuous learning opportunities, including workshops and conferences, to stay abreast of industry advancements.
  • Autonomy and Collaboration: Operate with significant independence, making decisions that drive innovation, while actively engaging with team members in a highly collaborative environment.
  • Comprehensive Support: Receive all necessary equipment and resources to ensure a productive remote work environment, tailored to your individual workspace needs.

  • Our Engineering Tech Stack Includes:
  • Frontend: Angular (currently on version 15) and TypeScript, bundled with Webpack targeting modern browsers.
  • Backend: Python/Tornado, MongoDB, PostgreSQL, with RESTful and GraphQL endpoints.
  • Infrastructure: Kubernetes, Docker, Terraform, and Google Cloud Platform.
  • Mobile Applications: Cordova, Swift, and Java, Kotlin