We are seeking a highly skilled and experienced Software Engineer to join our dynamic team. The ideal candidate will have a robust background in software development and passion for creating secure, innovative and efficient software solutions.
Design, develop, and maintain software solutions across the backend (Node.js), frontend (Vue.js), and additional client (Go).
Participate in designing and building the architecture of robust, scalable, and secure software solutions across the entire stack.
Ensure seamless integration between the backend and frontend components.
Implement and manage robust security practices to protect our software and clients data in the cloud and on-premise.
Implement or utilize AI/ML algorithms within the product as needed.
Collaborate with other team members to define, design, and ship new features.
Write clean, maintainable, and efficient code.
Conduct code reviews and provide constructive feedback to team members.
Troubleshoot, debug, and upgrade existing software.
Stay up-to-date with emerging technologies and industry trends.
Requirements: Bachelors degree in Computer Science, Engineering, or a related field, or equivalent experience.
5+ years of professional experience in software development.
Strong understanding of security principles and experience with security technologies (e.g., encryption, hashing, authentication, security protocols).
Experience with secure cloud and on-premise data storage practices, securing data transport (e.g., HTTPS, TLS, VPN) and secure key management practices.
Understanding of secure software development lifecycle (SDLC) practices.
Experience with Git version control.
Experience working in an Agile development environment and familiarity with Agile methodologies.
Excellent problem-solving skills and attention to detail.
Strong communication skills and ability to work collaboratively in a team environment.
Preferred Qualifications:
Proficiency in JavaScript and experience with Node.js, experience with front-end frameworks, particularly Vue.js and familiarity with the Go programming language.
Experience with cloud services such as AWS.
Knowledge of containerization technologies like Docker and Kubernetes.
Familiarity with CI/CD pipelines and DevOps practices.
Experience with database management and design (SQL and NoSQL).
Experience with distributed systems and decentralized applications (dApps, Web3), proficiency in programming languages commonly used for blockchain development (e.g., Solidity, Hyperledger Fabric). Experience in developing smart contracts.
Strong understanding of blockchain technology, including consensus mechanisms, cryptography, and smart contracts. Experience working with private blockchains or other distributed ledger technologies (DLTs).
Knowledge of common security vulnerabilities (e.g., OWASP Top Ten) and mitigation strategies.
Familiarity with compliance standards and regulations (e.g., GDPR, HIPAA, ISO).
Experience with security tools such as static code analysis tools, vulnerability scanners, and penetration testing tools.
Proven experience in implementing secure coding practices and conducting security audits.
Contributions to open-source projects or participation in the tech community.
This position is open to all candidates.