Software Engineer

alliantgroup

Houston, TXOn-siteFull time
Invite-only right now: save jobs, track applications, build tailored resumesAlready have an account? Log in
Location
Houston, TX
Work style
On-site
Job type
Full time
Posted
Oct 14
6 days ago
Career path

See where this role leads

Jigup maps the next three moves from a job like this one, with the titles and the skills each step asks for.

Join the waitlist

About the company

alliantgroup

Management consulting · 1,001 to 5,000 employees

alliantgroup on LinkedIn

What you'll do

  • Design, develop, test, deploy, and maintain enterprise software applications and technology platforms.
  • Create software architectures, troubleshoot complex systems, support engineering planning, and collaborate with distributed teams.

What you need

  • Requires a bachelor’s degree in computer science, computer engineering, software engineering, or a closely related technical discipline, and professional hands-on software engineering experience.
  • Must be able to work full-time onsite in the Houston office five days per week.
  • Education: a bachelor's degree

Key skills

C#dot-netPythonJavaScriptAngularSQLDatabase designAPI developmentApplication architectureDistributed systemsCloud computingGenerative AIAgile software developmentMicrosoft Azure DevOpsFlutter

Keywords for your resumePro

The words this employer's screening is likely to look for.

This job lists resume keywords

The terms this posting uses, pulled out so you can mirror them in your resume. Jigup Pro members see the list on the job board.

Join the waitlist

See full description on company page, apply now

Read the full posting here
This role is for a highly experienced Software Engineer to design, develop, and work on the implementation and testing of sophisticated software products and technology platforms. The ideal candidate combines strong hands-on software engineering capabilities with experience in software methodology, software architecture, cloud computing, data design, generative AI, enterprise integrations, and enterprise application development. This position is intended for an experienced hands-on software engineer who can operate at the design, develop, test, deploy and support levels across web, native and mobile applications. The successful candidate will be comfortable writing and reviewing custom production software, designing systems, supporting technical design discussions, breaking-down complex requirements into engineering tasks, estimating development effort, identifying technical risks, and working directly with other engineers, product management, project management, UI designers, quality assurance, business teams, and IT resources to deliver high-quality software solutions. The role will involve development of advanced technology solutions involving customer facing web and mobile products, big data, search, graph technologies, enterprise data, front-end, back-end, content publishing, benchmarking tools, and cloud-based architectures for both internal and external solutions and products. Work will include browser-based (C#, dot-net, Angular, PHP, Python, CSS, HTML, DB design, API’s), native applications, and mobile application architectures (e.g., flutter). The position requires excellent written and verbal communication and the ability to collaborate daily with geographically distributed engineering teams, including teams in the United States and India. Key Responsibilities Software Engineering • Accurately interpret requirements, design, develop, test, debug, deploy, and maintain enterprise software applications and technology platforms. • Write high-quality, maintainable, scalable, secure, and well-documented production code. Experience using generative AI tools to accelerate quality software design, code and test solutions. Very strong math skills are important. • Participate throughout the complete software engineering lifecycle. Ability to quickly analyze and respond to hosting and hot-fix deployments. • Analyze complex technical problems and develop practical, scalable solutions. • Review existing software and recommend improvements to architecture, performance, maintainability, security, and reliability. Analyze advancements in market technologies and design patterns to recommend and incorporate into planned solutions. • Conduct and participate in requirements, design, code, test plan and deployment plan reviews. • Establish and promote software engineering best practices, coding standards, testing practices, safe incorporation of generative AI engineering results, and development processes. • Troubleshoot complex applications, infrastructure, integration, data, and performance problems. Extensive skills in debugging best practices. • Develop reusable software components, services, APIs, and frameworks where appropriate that align to design. • Experience supporting multiple codebases (products) in parallel as needed. • Strong technical, functional and support documentation writing skills and experience. • Able to mentor other software engineers and associates at varying levels of experience. Software Design & Engineering • Hands on software coding, unit test creation, testing and debugging. • Establish, update, train others and write code based on coding standards. • Design software for new products and major enhancements to existing systems. Support technical design discussions with software engineering teams. • Translate business and functional requirements into technical designs and implementation approaches. • Create technical design diagrams, UML artifacts, system diagrams, data-flow diagrams, integration diagrams, database designs and other technical documentation. • Evaluate design alternatives and make recommendations based on scalability, performance, security, maintainability, cost, and implementation complexity. • Design distributed systems and cloud-based applications. • Define application boundaries, service interfaces, APIs, data flows, dependencies, and integration patterns. Develop software code, documented code, and unit tests. Define and use project file structure standards including security related assets. • Identify architectural constraints and technical dependencies early in the development lifecycle. • Help establish technical standards and architectural patterns across products. • Ensure architectural decisions are appropriately documented and communicated to the engineering team. • Familiar with and able to effectively use source code control tools and software release standards. Application Security & Infrastructure Security • Incorporate security considerations into application and system architecture. • Develop secure software and follow secure coding practices. • Understand authentication, authorization, identity management, access control, and data protection. • Work with Microsoft Entra ID, Azure DevOps, and cloud identity architectures. • Identify security vulnerabilities and architectural security risks. • Collaborate with security and infrastructure teams on security requirements and remediation. • Consider security, privacy, and data protection requirements when designing AI and data systems . • Ensure security is addressed throughout the software development lifecycle. Scalability, Performance & Reliability • Design systems capable of scaling appropriately as users, transactions, data volumes, and workloads increase. • Analyze application and infrastructure performance. • Identify system bottlenecks and develop performance optimization approach. • Design for appropriate availability, reliability, fault tolerance, and recoverability. • Evaluate architectural tradeoffs between performance, scalability, cost, complexity, and maintainability. Participate in performance testing, functional testing and security testing. Engineering Task Definition & Estimation While this is an engineering position, this role is expected to contribute substantially to engineering planning and execution. Responsibilities include : • Break complex technical requirements into manageable engineering tasks. • Define technical implementation steps and dependencies. • Estimate development effort and technical complexity. • Identify assumptions underlying technical estimates. • Identify technical risks and implementation uncertainties. • Identify contingency approaches when technical approaches may not achieve the desired result. • Help engineering teams establish realistic development commitments. • Identify dependencies between software components, systems, teams, data, infrastructure, and third-party services. • Communicate changes to estimates or technical approach as new information becomes available. Agile Software Development • Work effectively within an Agile software development environment. • Participate in sprint planning, backlog refinement, technical discussions, sprint reviews, and retrospectives. • Collaborate with product management to clarify requirements and acceptance criteria. • Help ensure engineering work is appropriately defined before implementation begins. • Maintain awareness of sprint objectives, technical dependencies, blockers, and delivery commitments. • Provide technical input into prioritization and sequencing decisions. • Continuously improving engineering practices and development processes. Technical Risk & Contingency Identificati on • Proactively identify technical risks that could affect product functionality, quality, security, performance, schedule, or scalability. • Communicate significant risks to technical and product leadership. • Develop alternative technical approaches when appropriate. Identify technical dependencies that could create delivery constraints. • Evaluate new technologies and architectural approaches for potential implementation risks. Help engineering teams establish contingency plans for high-risk technical components. Technical Documentation Maintain clear and useful technical documentation throughout the development lifecycle. Documentation examples include design diagrams, System designs, UML artifacts, Data-flow diagrams, API specifications, Technical requirements, Data models, Integration specifications, software environment installation and standards, Engineering standards, Deployment environments and processes, monitoring plans and solutions, automated test scripts and test plans. Experience with documentation and wiki platforms such as Microsoft Loop and Confluence is desirable. Engineering Status & Communicatio n • Provide concise and accurate written and verbal updates regarding engineering progress. Communicate completed work, current activities, upcoming work, blockers, technical risks, and dependencies. • Clearly communicate technical issues to both engineering and non-engineering stakeholders. Maintain effective communication with distributed engineering teams across multiple time zones. • Collaborate daily with technology teams in the United States and India. • Ensure important technical decisions and issues are documented rather than relying solely on verbal communication. • Participate effectively in technical meetings and design reviews. Technical Tools & Collaboration Experience with, or ability to work effectively with, tools such as: • Microsoft Azure DevOps suite, ADO Projects, Jira, Microsoft Loop, Confluence, Lucid, Figma, Microsoft Office Suite (e.g., PowerPoint, Word, Excel), Git/source-control platforms, Software IDE’s, AI-assisted software development tools The engineer should be comfortable using technical collaboration tools to support requirements, architecture, development, documentation, design, and engineering execution. User Interface & User Experience Knowledge of UI and UX design is a plus. The role should be able to : • Understand UI/UX requirements and design specifications. • Work effectively with product and UX/UI designers. • Interpret Figma designs and translate designs into software implementations. • Identify technical implications of UI/UX decisions. • Contribute technical recommendations regarding usability, performance, responsiveness, and implementation feasibility. • Write software for front-end UI experiences for web based, native, and mobile apps. Enterprise Applications & Integrations Experience developing or integrating enterprise applications and platforms is desirable. Experience with Salesforce and Salesforce integration is a plus. The engineer should understand enterprise integration patterns involving: • REST APIs, Web services, Data integration, Authentication and authorization security, Event-driven architectures, Enterprise SaaS platforms, Mobile Applications, Cloud services, Relational and non-relational data systems. Required Technical Skills Strong professional experience with software programming languages and technologies including C, C#, dot-net, C++, Python, JavaScript, PHP, Angular, HTML, CSS, SQL, Database design, Flutter, API development, Application architecture, Distributed systems, Cloud computing, data design, and Generative AI. Experience with mobile application development is a plus with tools such as flutter. Ability to learn and effectively use new software languages, software libraries, IDE’s, debug tools and software engineering tools. Use of Hangfire is nice to have. Deploying custom software solutions to Microsoft Azure environments (or other similar cloud service providers) is nice to have. Required Qualifications • Bachelor’s degree in computer science, Computer Engineering, Software Engineering, or a very closely related deep technical discipline. • Professional experience as a hands-on software engineer. • Demonstrated experience designing and writing code for production software systems. • Understanding software architecture and system design. • Experience designing scalable, high-performance software systems. • Experience with database design and data architecture. • Experience with cloud-based software development. • Strong understanding of Agile software development methodologies. • Experience breaking technical requirements into engineering tasks. • Experience estimating software development effort and complexity. • Ability to identify technical risks, dependencies, and contingency approaches. • Strong written and verbal communication skills. • Ability to create and communicate software architecture diagrams. • Ability to collaborate effectively with distributed engineering teams. • Experience working with modern software development and collaboration tools. • Ability to work full-time onsite in the Houston, Texas office five days per week.

More entry level jobs in Houston, TX

All jobs in Houston, TX

Ready to apply?

Jigup is invite-only right now. Join the waitlist to save jobs, track applications, and build tailored resumes.

Join the waitlist