What are we looking for?
- Title: Software Engineer, Full-Stack
- Compensation: $115,000 - $150,000
- Reports To: CEO
We are looking for an experienced full-stack engineer to support and maintain our existing technology stack plus design and code the front-end and back-end of our new B2B SaaS solution using both new and proven technologies. The ideal candidate has an entrepreneurial mindset to write top-notch code in a fast-moving and dynamic environment.
Who are you?
You have a passion for writing scalable, elegant, and high-quality code that balances theory with real-world business needs. You enjoy challenges and learning new technology, and you can build it fast when needed, but you know to build it right for the long term. You thrive in fast-paced environments and are flexible in adapting to change. Innovation and start-up culture are in your blood. You’re a problem solver; you make things happen and work with others to build constructive and effective relationships. You seek opportunities to express initiative, volunteer readily, perform self-development activities, seize increased responsibilities, and take independent action and calculated risks. You’re detail-oriented, rolling up your sleeves to make sure the job gets done. You have a high level of intellectual curiosity that reveals insights and implications, and you use that knowledge to think creatively about solutions.
You understand that while you’re deeply passionate about technology, technology without business results is worthless. You have an obsessive customer focus and want to learn all about our market and value proposition so you can ensure excellent product-market fit, enviable NPS, and off the charts CSAT. It is important to get to market quickly, experiment, learn, adapt and iterate. You really understand what it means to deliver an MVP product and to provide a top-notch user experience. You have pride in your work and instill that pride in your team.
Importantly, you exemplify our core principles of transparency, honesty, clarity, accountability, and safety.
What are the primary responsibilities?
- Design and code distributed services using JVM languages and RESTful APIs.
- Work closely with our Product, Sales, and Services teams to ensure we’re building the right product.
- Build telemetry and analytics into every facet of the product suite.
- Work with QA to develop and implement automated API, load, and performance testing.
- Work closely with designers, architects, and other developers to provide a well-structured solution.
- Work closely with our Product, Sales, and Services teams to ensure we’re building the right product for the right customers.
- Contribute to the open-source community as we incorporate those solutions into our technology stack.
- Supervise and mentor junior engineers as our team grows.
- Perform various Agile roles as needed.
- Stay abreast of technology trends.
- Represent Documoto in the local engineering community.
What Makes You a Great Fit?
- Bachelor’s degree in Computer Science or equivalent work experience.
- 5+ years of experience building enterprise-scale database-driven web applications, with much of that in SaaS.
- Must be detail-oriented, outcome-focused, data-informed, and analytical.
- Experience in manufacturing, eCommerce, ERP, or mechanical engineering is a big plus.
- Formal experience or education in usability or UI/UX is a big plus.
- 3+ years writing SOAP and REST web services.
- Solid understanding of web application architecture, SPA vs. non-SPA applications, authentication and SSO, asynchronous messaging, integration, object-oriented software, and design patterns.
- Experience using open source Java frameworks including Spring, Spring Boot, Hibernate, and common APIs such as JPA, JDBC, and JMS.
- Experience with Kotlin
- Solid knowledge of SQL and relational databases, i.e., MySQL, Oracle, or equivalent, including schema design.
- Experience with multi-threaded Java application development and the concurrency package APIs.
- Strong experience with XML and JSON structured data and processing.
- Experience developing on Linux/Unix or Mac environments, including shell scripts.
- Experience with CSS frameworks such as Bulma or Bootstrap.
- Experience with unit testing, automated testing, code reviews.
- Solid experience in enterprise software development practices: Agile; tools for issue tracking and code repos; builds, CI & CD; feature flagging.
- Competent with Git and Maven
- Experience with any of the following is a big plus:
- Understanding of SVG files and other vector-based image formats
- Other JVM languages such as Scala or Groovy
- NoSQL and/or Graph databases such as MongoDB, Neo4J
- Solr or Elasticsearch design and implementation
- Mobile application development
- Excellent interpersonal, organizational, presentation, verbal, and written communication skills.
- Ability to effectively interact with senior management as well as business stakeholders.
- Well organized.
- Strong ability to resolve conflicts constructively; a great attitude.