We are looking for a Full Stack Software Engineer who has a passion for building exceptional solutions that deliver and fulfill the needs of our customers. As a Full Stack Software Engineer, you will collaborate with Product Management and other Engineers to design, build and deliver firewall management solutions which make complex firewall security operations simple. You will collaborate closely with technical and non-technical counterparts to understand our customers' problems and build products that deliver on the outcomes they deserve.
Throughout the product lifecycle, you will be involved from idea generation, design, and prototyping to execution and implementation. Our organization is made up of small teams to support agility and creativity. That said, we encourage movement among teams to share context, skills, and experience, so you will learn about many distinct aspects of each product.
About the role:
- Continuously deliver customer value through delivery of software features
- Write maintainable code, working in a professional agile software engineering environment
- Participate in code reviews and team meetings, providing technical insight
- Work with a team implementing new features and supporting current services/applications
- Work on hard problems; design, develop, test, deploy, maintain and improve services and applications
- Evaluate modern technologies and approaches to streamline or improve our rapid application development tooling and conventions
- Regularly learn new systems and tools as the FireMon platform and ecosystem evolve
- Utilize a broad application of principles, theories, and concepts in applicable discipline, plus a working knowledge of other related fields
- Exercises judgment within generally defined practices and policies in selecting methods and techniques for obtaining solutions
- Interest in network security/network security policy management
Skills and Experience:
Must Have:
- Humility
- Integrity
- A great desire to both learn and teach others
- Significant and demonstrable experience with various programming languages, frameworks, and databases
- Ability to write clean, effective code and learn new languages quickly
- Resourceful, Analytical, and Agile
- Enjoys opportunities to learn new skills
- Effective communicator
- Creativity and deep technical knowledge to convert what you know and what you learn into a better software product
Should Have:
- Demonstrable problem-solving skills
- College degree, Bootcamp certification, or be self-taught
- History of delivering impactful solutions
- Applicable knowledge of agile development practices and principles
- Experience designing and implementing domain-level architectures
- Hands-on experience with languages and frameworks like Java 11+, Hibernate/JPA, Spring, Jackson, JavaScript, TypeScript, Angular
- Experience with databases: SQL, Postgres (or similar object-relational database systems)
Could Have:
- Experience with BDD (Binary Decision Diagram)
- Networking and/or Security experience
- Hands-on experience with ActiveMQ, Camel
- Data Analytics experience with Elastic Search (or similar Apache Lucene engines)
- Experience with Linux distributions: Fedora, CentOS Stream, RHEL
- Experience with CI/CD pipelines (Jenkins, Travis)
- History of collaborating with other technical leaders to choose modern technologies
- Performed deep research to evaluate and test hypotheses
- Understands trade-offs of reliability, scalability, operational costs, and so on
- Experience with TDD (Test Driven Development), Pair Programming, Mob Programming
FireMon provides equal employment opportunities to all employees and applicants for employment, and prohibits discrimination and harassment of any type.