Code42 is an enterprise SaaS company that develops intuitive, optimized technology to securely protect and manage the world's information. Top-name brands and large organizations entrust their data to our industry-leading and award-winning CrashPlan endpoint security and backup products. We are a well-funded private company backed by several of the venture capital industry's most successful firms including Accel, JMI, NEA, and Split Rock Partners.
WHAT YOU’LL BE DOING:
Code42 is looking for a Senior Software Engineer to join our growing team. We're looking for people with a passion for world-class software development, who understand the importance of maintainable code and comprehensive tests, and who will join us in caring about the customers who trust Code42 to protect and secure their data. As an engineer, you'll be working on challenging problems in scalability, security, and new feature development. You might be a good fit if you enjoy participating in a design session in front of a white board, implementing an elegant piece of code, or going through a stack trace from a failed test. We have a casual and collaborative work atmosphere where everyone’s opinions and ideas are valued.
Code42 provides endpoint data protection and security to more than 37,000 organizations, including the most recognized brands in business and education.
YOU’LL BE RESPONSIBLE FOR:
- Designing and implementing server-side Java code that powers the Code42 cloud, taking into account functional requirements as well as non-functional requirements such as scalability, robustness, monitoring, supportability, and testability.
- Collaborating with teammates throughout the product development organization including product owners, UI/UX designers, QA analysts, technical writers, and customer champions.
- Verifying the correctness of your implementations by writing automated tests.
- Documenting code and design, and reviewing others’ work products.
- Synthesizing requirements into cohesive designs, identifying gaps and contradictions.
- Leading agile story authoring, sizing, and demo sessions for product features.
- Leading team design discussions and code reviews, asking questions, contributing and accepting feedback.
- Mentoring and guiding more junior staff.
- Contributing to process improvement efforts within engineering.
- Continuously learning about technology and software development, and sharing knowledge with the team.
SKILLS AND REQUIREMENTS:
- Bachelor's degree in Computer Science or a related field.
- 5 to 8 years professional software development experience, or can convincingly demonstrate this level of knowledge and skill.
- Experience with object-oriented development for enterprise-class, multi-tier systems and the design patterns upon which they are built.
- Experience in the primary languages of the team: Java and SQL.
- Experience at least one relational database management system, including data modeling and querying.
- Experience taking ownership of deliverables as part of a team.
- Familiarity with continuous integration and deployment concepts.
- Familiarity with working in an agile, collaborative environment, both offering and asking for help when it's needed.
- Comfortable working with non-technical staff.
- Experience with the tools that comprise our tech stack. The more of these you know, the better:
- Frameworks: Hibernate, Guice, Jetty, Netty
- Databases: PostgreSQL, H2
- Environments: Linux, Mac OS X, and Windows
- Tools: Git, Jira, Stash, Eclipse, IntelliJ, JUnit, Cucumber
- Experience with building installation and upgrade processes for any of our supported environments.
- Experience with cloud environments like AWS, Azure, Heroku, or others.
- Experience with security and cryptographic systems.
- Real-world examples of production-quality work you've done in the past.
- Active in the local tech community
- Have an active github profile
- Have contributed to open-source softwarE
- Cultivates Innovation
- Values Differences
- Instills Trust
- Customer Focus