Full Stack Principal Engineer

FTE Oakland, CA

Opensource search, firm based in Oakland, looking to hire a full stack engineer to assist with scaling and modernizing their architecture.

Key role where your work with have a direct impact on the org, great work/life balance organization that is passionate about search and scalable systems.

Responsibilities:

  • Improve the quality of a large web software application
  • Support the move to a microservice architecture by designing and writing new services that can gradually replace portions of the legacy codebase
  • Support existing features while improving the quality of the current codebase
  • Increase the number, quality, and reach of unit and integration tests
  • Investigate and address production issues
  • Work closely with software architects and database/operations engineers on system infrastructure and design
  • Foster engineering best practices and technical excellence through mentoring of engineers and working closely together on projects (e.g. pair programming, code review)
  • Provide technology analysis, proof of concepts, pilots, evaluations, and recommendations across the various heterogeneous technology stacks (LAMP, Java, Ruby on Rails, Go, Node.js, iOS, Android) and programming languages used
  • Implement highly scalable, elegantly simple, secure, maintainable, and modular commercial grade new software for the core technology stack
  • Accelerate the reduction of technical debt across our production software systems
  • Evangelize and implement engineering and testing best practices across the company (code reviews, SCM conventions, tools, etc)
  • Contribute to efforts to investigate, document, drive, and define goals, non-goals, formulate designs, plans, and implementation strategies for our transition to a microservices architecture
  • Innovate, drive, and define high impact technology research and projects

 

Required Skills:

  • 8+ years experience writing robust web/SaaS applications in one or more high-level programming languages such as Golang, Node.js, Java, Python, and Perl
  • 6+ years experience in object oriented programming with expert knowledge of distributed systems, concurrency, REST web services, SQL and no-SQL databases, and internet scalability
  • Extensive experience with web application frameworks and software development best practices (e.g. test-driven development, ORM, object-oriented design, code profiling, debugging)
  • Experience with container and clustering technologies like Docker, Kubernetes, Tectonic, etc in a micro-services environment
  • Background in cloud technologies and frameworks such as Amazon Web Services, Google Cloud, and OpenStack a plus
  • Demonstrated success working as a technical lead on one or more significant projects
  • Experience using software version control systems, especially Git and GitHub
  • Success in mentoring and supporting other engineers
  • Ability to work with complicated legacy code
  • Experience working with Linux and SQL databases
  • Ability to communicate effectively with both technical and non-technical colleagues
  • Experience or interest in working within an Agile model (particularly Scrum)
  • A high level knowledge and experience of industry trends and technology advancements relating to distributed systems, cloud, platform as a service, software as a service
  • Experience in participating in open source standards and contributing to open source is highly desirable

Posted July 7, 2016 by & filed under Jobs.