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, a deep understanding of security technologies, and a passion for creating secure and efficient software solutions.
Key Responsibilities:
Design, develop, and maintain software solutions across the backend (Node.js), frontend (Vue.js), and additional client (Go).
Implement and manage robust security practices to protect our software and clients data in the cloud and on-premise
Manage encryption schemes, encryption keys and ensure secure key management practices.
Design and develop private blockchain solutions that meet the specific needs of an organization and into existing IT infrastructure.
Create and manage smart contracts for private blockchains.
Stay up-to-date on the latest developments in blockchain technology, Web3, and DRM.
Advise on the legal and regulatory implications of using blockchain technology.
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.
Experience with securing data transport (e.g., HTTPS, TLS, VPN).
Experience with key management and secure key management practices.
Strong understanding of blockchain technology, including consensus mechanisms, cryptography, and smart contracts.
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.
Familiarity with the Go programming language.
Experience with distributed systems and decentralized applications (dApps, Web3).
Proficiency in programming languages commonly used for blockchain development (e.g., Solidity, Hyperledger Fabric).
Knowledge of common security vulnerabilities (e.g., OWASP Top Ten) and mitigation strategies.
Experience working with private blockchains or other distributed ledger technologies (DLTs).
Experience in developing smart contracts.
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).
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.