Software Engineer (4) - Premium Senior Engineer
- Waterloo, ON, Canada
Contract
Applications open in a new tab.
Job details
- Job type
- Contract
- Apply by
- Experience
- 8+ years of experience working with relational databases (such as SQL server) Experience in front end development (JavaScript, HTML, etc)
- Posting language
- English
- Posted
Original job description
Location: Waterloo Ontario N2L 3L3, Hybrid On-site 4 days a week
Duration: 12 months to long term
Overview
Employees in this job function are responsible for designing, developing, testing and maintaining software applications and products to meet customer needs. They are involved in the entire software development lifecycle including designing software architecture, writing code, testing for quality and deploying the software to meet customer requirements. Full-stack software engineering roles, who can develop all components of software including user interface and server side also fall within this job function.
Key Responsibilities
SQL Server, Java, Spring Boot
Duration: 12 months to long term
Overview
Employees in this job function are responsible for designing, developing, testing and maintaining software applications and products to meet customer needs. They are involved in the entire software development lifecycle including designing software architecture, writing code, testing for quality and deploying the software to meet customer requirements. Full-stack software engineering roles, who can develop all components of software including user interface and server side also fall within this job function.
Key Responsibilities
- Engage with customers to deeply understand their use-cases, pain points, and requirements, showcasing empathy and advocating for user-centric software solutions
- Solve complex problems by designing, developing, and delivering using various tools, languages, frameworks, methodologies (like agile) and technologies
- Assess the requirements of the software application or service and determine the most suitable technology stack, integration method, deployment strategy, etc.
- Create high-level software architecture designs that outline the overall structure, components, and interfaces of the application
- Collaborate with cross functional teams like product owners, designers, architects etc.
- Define and implement software test strategy, guidelines, policies and processes in line with organization vision, industry regulations and market best practices.
- Work on continuously improving performance and optimizing the application and implement new technologies to maximize development efficiency
- Familiar with programming practices, such as test-driven development, continuous integration, and continuous delivery
- Support security practices to safeguard user data including encryption and anonymization.
- Create user-friendly and interactive interfaces
- Develop and maintain back-end applications like APIs and microservices using server-side languages
- Evaluate and incorporate emerging technologies and capabilities to deliver their solutions, and are monitoring and participating in solutions for new stack layers, often involving industry collaboration
SQL Server, Java, Spring Boot
- Java: Writing Java application code. Good understanding of object-oriented principles and design.
- SQL Server: writing SQL queries and optimizing slow performing queries. Relational database design and indexing strategies
- SpringBoot: developing REST APIs handling high call volume
- Bachelor's degree in computer science, software engineering or related field 8+ years of experience in software development (Java, C#, or similar are preferred)
- 8+ years of experience working with relational databases (such as SQL server) Experience in front end development (JavaScript, HTML, etc)
- Experience with SpringBoot and Java Microservices Experience with ELK stack (ElasticSearch and Logstash in particular)
- Experience with OpenShift, Kubernetes, Docker, and similar technologies
- Experience with public clouds such as GCP, Azure, and AWS Embedded development experience and experience with GDB Experience with Python
More about this job
Responsibilities
Design, develop, test, deploy, and maintain software applications, including user interfaces, back-end services, APIs, and microservices. Collaborate with customers and cross-functional teams to define architecture and technology choices, improve performance, establish testing practices, and protect user data.
Requirements
A bachelor's degree in computer science, software engineering, or a related field and at least eight years of software development experience are required. The role also requires at least eight years working with relational databases, with experience in front-end development; Java, SQL Server, and Spring Boot are relevant technologies.
Skills
- SQL Server
- Java
- Spring Boot
- Object-Oriented Programming
- SQL Query Optimization
- Relational Database Design
- Database Indexing
- REST APIs
- Microservices
- JavaScript
- HTML
- Elasticsearch
- Logstash
- OpenShift
- Kubernetes
- Docker
Visa sponsorship
Not detected in the job text
Categories
- Software
- Technology
- Engineering
Keywords
- Java
- SQL Server
- Spring Boot
- REST APIs
- Microservices
- JavaScript
- HTML
- Elasticsearch
- Logstash
- OpenShift
- Kubernetes
- Docker
- Google Cloud Platform
- Azure
- AWS
- Python
- GDB
- Relational Databases
- Object-Oriented Programming
- Database Indexing
- SQL Query Optimization
- Software Architecture
- Full-Stack Development
- Test-Driven Development
- Continuous Integration
- Continuous Delivery
- Agile
- Application Security
- Encryption
- Anonymization