Software Engineer- Cloud
Apply NowCompany: THE WITTERN GROUP, Inc.
Location: Des Moines, IA 50317
Description:
Description
As a Software Engineer - Cloud specializing in full lifecycle development of our cloud-based SAAS platform, encompassing everything from database design, API development, business logic and user interfaces. This role requires a strong understanding of cloud infrastructure and a passion for building high-quality, scalable applications.
People filling this role will act independently to drive activity supporting the overall goals of the organization. Creating systems that are integrated into the overall IoT solution, as well as the support and mentoring of team members.
Requirements
1. SAAS Development: Design, develop, and maintain full-stack SaaS applications within a cloud environment (AWS/Azure).
2. Backend Development: Develop and maintain robust and efficient backend systems, including database design (SQL Server, PostgreSQL) and API development (RESTful).
3. Business Logic Components: Develop and maintain complex business logic components.
4. User Interfaces: Develop and maintain responsive and intuitive user interfaces.
5. Testing and Validation: Develop and execute unit tests, integration tests, and system tests to ensure software quality and reliability.
6. Complex Development: Handle the most challenging and complex development tasks, ensuring efficient and effective solutions - seek guidance from Senior Engineers and Architects to complete assigned tasks.
7. Code Reviews: Conduct thorough code reviews to maintain code quality and ensure adherence to coding standards.
8. Debugging and Troubleshooting: Identify and resolve software defects and performance issues.
9. Mentorship: Provide technical guidance and mentorship to junior software engineers, fostering their professional growth.
10. Documentation: Create and maintain comprehensive technical documentation, including design specifications, API documentation, and user manuals.
11. Performance Optimization: Optimize code for performance, memory usage, and power consumption.
12. Demonstrate experienced working with Agilie methodologies and DevOps practices.
13. Collaborate with cross-functional teams (product, design, QA) to deliver high-quality software.
14. Stay abreast of the latest advancements in cloud development technology and paradigms, identifying opportunities for improvement and innovation.
15. Independently demonstrate the ability to work with business and technical team members to identify, source and implement new business technology.
16. Independently demonstrate the ability to find technological solutions to business requirements.
17. Independently demonstrate strong written and verbal communication skills that allow the individual to work with team members responsible for tactical activity as well as leadership positions throughout the organization.
18. Independently demonstrate the ability to use critical thinking skills to solve problems.
19. Independently demonstrate proficiency in Microsoft Office Applications - Word, Excel, PowerPoint.
20. Independently demonstrate the ability to use their role to improve the training and operational procedures within the business to increase efficiency and productivity.
21. Independently demonstrate the ability to work with a broad set of personality types and lead resources in a way to minimize conflict and successfully find resolution to potential roadblocks.
22. Independently oversee implementation of projects from beginning to completion.
23. Independently demonstrate the ability to document nonfunctional requirements which includes the system's quality attributes, such as usability, security, reliability, performance, availability, and scalability.
24. Independently demonstrate the ability to continue to learn about technology and industry trends to provide insight to leadership on solutions that could increase efficiencies or drive additional revenue.
25. OPTIONAL: Knowledge of enterprise resource planning systems used in the manufacturing industry.
Required Skills and Qualifications
1. 3+ years of experience in full stack cloud development.
2. Strong proficiency in C# programming.
3. Strong experience with SQL Server and PostgreSQL databases.
4. Experience developing and consuming RESTful APIs.
5. Experience with front-end development technologies.
6. Experience with Visual Studio Code.
7. Experience with version control systems (GitHub Enterprise).
8. Experience with CI/CD tools (Jenkins).
9. Experience with automated testing frameworks (Selenium).
10. Understanding of cloud platforms (AWS/Azure) and related services.
11. Familiarity with Agile/Scrum development methodologies.
12. Excellent problem-solving and communication skills.
13. Experience with containerization technologies is a plus.
14. Knowledge of communication protocols (e.g., TCP/IP, MQTT, REST).
15. Excellent communication and collaboration skills.
Educational Requirements
Individuals in this role should have a Bachelor's degree in Computer Science, Electrical Engineering, or a related field (or equivalent relevant experience).
As a Software Engineer - Cloud specializing in full lifecycle development of our cloud-based SAAS platform, encompassing everything from database design, API development, business logic and user interfaces. This role requires a strong understanding of cloud infrastructure and a passion for building high-quality, scalable applications.
People filling this role will act independently to drive activity supporting the overall goals of the organization. Creating systems that are integrated into the overall IoT solution, as well as the support and mentoring of team members.
Requirements
1. SAAS Development: Design, develop, and maintain full-stack SaaS applications within a cloud environment (AWS/Azure).
2. Backend Development: Develop and maintain robust and efficient backend systems, including database design (SQL Server, PostgreSQL) and API development (RESTful).
3. Business Logic Components: Develop and maintain complex business logic components.
4. User Interfaces: Develop and maintain responsive and intuitive user interfaces.
5. Testing and Validation: Develop and execute unit tests, integration tests, and system tests to ensure software quality and reliability.
6. Complex Development: Handle the most challenging and complex development tasks, ensuring efficient and effective solutions - seek guidance from Senior Engineers and Architects to complete assigned tasks.
7. Code Reviews: Conduct thorough code reviews to maintain code quality and ensure adherence to coding standards.
8. Debugging and Troubleshooting: Identify and resolve software defects and performance issues.
9. Mentorship: Provide technical guidance and mentorship to junior software engineers, fostering their professional growth.
10. Documentation: Create and maintain comprehensive technical documentation, including design specifications, API documentation, and user manuals.
11. Performance Optimization: Optimize code for performance, memory usage, and power consumption.
12. Demonstrate experienced working with Agilie methodologies and DevOps practices.
13. Collaborate with cross-functional teams (product, design, QA) to deliver high-quality software.
14. Stay abreast of the latest advancements in cloud development technology and paradigms, identifying opportunities for improvement and innovation.
15. Independently demonstrate the ability to work with business and technical team members to identify, source and implement new business technology.
16. Independently demonstrate the ability to find technological solutions to business requirements.
17. Independently demonstrate strong written and verbal communication skills that allow the individual to work with team members responsible for tactical activity as well as leadership positions throughout the organization.
18. Independently demonstrate the ability to use critical thinking skills to solve problems.
19. Independently demonstrate proficiency in Microsoft Office Applications - Word, Excel, PowerPoint.
20. Independently demonstrate the ability to use their role to improve the training and operational procedures within the business to increase efficiency and productivity.
21. Independently demonstrate the ability to work with a broad set of personality types and lead resources in a way to minimize conflict and successfully find resolution to potential roadblocks.
22. Independently oversee implementation of projects from beginning to completion.
23. Independently demonstrate the ability to document nonfunctional requirements which includes the system's quality attributes, such as usability, security, reliability, performance, availability, and scalability.
24. Independently demonstrate the ability to continue to learn about technology and industry trends to provide insight to leadership on solutions that could increase efficiencies or drive additional revenue.
25. OPTIONAL: Knowledge of enterprise resource planning systems used in the manufacturing industry.
Required Skills and Qualifications
1. 3+ years of experience in full stack cloud development.
2. Strong proficiency in C# programming.
3. Strong experience with SQL Server and PostgreSQL databases.
4. Experience developing and consuming RESTful APIs.
5. Experience with front-end development technologies.
6. Experience with Visual Studio Code.
7. Experience with version control systems (GitHub Enterprise).
8. Experience with CI/CD tools (Jenkins).
9. Experience with automated testing frameworks (Selenium).
10. Understanding of cloud platforms (AWS/Azure) and related services.
11. Familiarity with Agile/Scrum development methodologies.
12. Excellent problem-solving and communication skills.
13. Experience with containerization technologies is a plus.
14. Knowledge of communication protocols (e.g., TCP/IP, MQTT, REST).
15. Excellent communication and collaboration skills.
Educational Requirements
Individuals in this role should have a Bachelor's degree in Computer Science, Electrical Engineering, or a related field (or equivalent relevant experience).