Software Engineer
- Full-time
Company Description
Job Description
The Role
As a Software Engineer at MicroStrategy, you will provide our customers with the most powerful, scalable, and user-friendly platforms for analytics, mobility, and security. You play a role in enabling MicroStrategy products to be best-in-breed and optimized for leading organizations to analyze big data and distribute actionable business insight across their enterprise. You will design and build scalable software systems in a high-availability, high-performance programming environment.
Your Focus
· Work within an agile development team and lead at an engineering level the design, development, testing, and debugging of software components and products.
· Proactively participate in every aspect of the entire life cycle of feature development, including input on requirements, designs, implementation, test design, test implementation, optimization, and delivery.
· Participate in peer code reviews, knowledge sharing, and SCRUM meetings.
· Take ownership of cross-team issues and product delivery issues including pro-actively communicating across teams to coordinate activities.
Specialty Roles Opportunity
We encourage engineers with the following specialized experience to apply.
· Cloud or DevOps engineering: Hands-on experience with chef, Jenkins, CI/CD pipeline, cloud technologies such as AWS, Azure, GCP, or similar.
· Cryptocurrency engineering: Experience with decentralized systems and cryptocurrency protocols such as Bitcoin. Familiarity with public key infrastructure protection mechanisms, HSM technology, and cryptographic protocols. Experience with creating products and services that interface with public, private, and permissioned blockchains.
Qualifications
Required Experience and Skills
Motivation, Innovation, Passion, Integrity, Teamwork, Customer-Focus
You should also bring the following:
· Bachelor’s degree in Computer Science, Engineering, or related field; Master’s or Ph.D. degree in Computer Science/Engineering a plus
· Minimum 2+ years software development experience in an Agile environment
· Experience in development on Windows, Linux, MacOS, and/or Mobile platforms
· Fluent in object-oriented programming languages, such as Java, C++, C#, Objective C, JavaScript
· Strong knowledge of front-end web technologies: JavaScript, HTML 5, CSS 3, Rest APIs preferred
· Strong object-oriented design, development, and debugging skills
· Strong analytical, communication, and problem-solving skills
· Strong knowledge of data structures, algorithms, operating systems, and other fundamental Computer Science concepts
· Experience with Rally or other Agile Management tools preferred
· Possess the ability to be process-driven with an ability to pay close attention to detail
· Team-oriented individual, energetic, result and delivery oriented