Thales people architect identity management and data protection solutions at the heart of digital security. Business and governments rely on us to bring trust to the billons of digital interactions they have with people. Our technologies and services help banks exchange funds, people cross borders, energy become smarter and much more. More than 30,000 organizations already rely on us to verify the identities of people and things, grant access to digital services, analyze vast quantities of information and encrypt data to make the connected world more secure.
We are currently looking for a Senior Software Engineer to join Thales in Ottawa, CA. The Senior Software Engineer is a member of a collaborative development team, and will be instrumental in the design and implementation of secure Key management Platform & SaaS Service.
- Software engineering principles and best practices across all phases of commercial development and engineering product release practices
- Professional experience designing and building scalable microservices and orchestration
- Designing features for multi-tenancy, high availability, scalability, manageability and extensibility
- Evaluate new technologies, evangelize with prototypes and eventually get it integrated into the products where applicable
- Using test-driven methodologies and automation in the design and development phase to ensure quality before hand-off to Quality Assurance teams for further testing and verification.
- Debugging and resolving complex problems in multi-threaded applications
- Working closely with customer support to understand issues and represent solutions
- Communicating task and project status to the team and engineering management
- Time management for ensuring project goals are met on time and within budget
- Accurately breaking down, estimating, and scheduling software tasks
- Formal software configuration management & control tools
- Keeping up-to-date with technical developments in the field of server development and security
Required Skills and Experience:
- Bachelor’s degree in Computer Science or Computer Engineering or a related field with 6+ years or Master’s degree with 4+ years of experience.
- 1-2 years of experience using AWS, Docker, Kubernetes and launching products in production using these technologies.
- Experience with SaaS applications in the cloud and a solid understanding of cloud technologies (AWS, Azure, GCP)
- Experience in Go, C/C++ or Java languages
- Experience with RESTful API using tools such as Swagger
- Experience with PKI, PKCS, KMIP standards
- Experience in the development of high availability and database-centric enterprise-class software on Postgres.
- Experience in troubleshooting and resolving database performance issues, blocking and deadlocking issues
- Experience with Linux software development, package, test & release, desirable knowledge of scripting languages.